Hacker News new | comments | ask | show | jobs | submit login

PHP recently received an extension that exposes an asynchronous programming framework, called swoole. It's extremely promising (but not perfect). Here's the link https://www.swoole.co.uk/ and it produces some very, very, very interesting results - both in synthetic benchmarks AND real world. Link: https://www.techempower.com/benchmarks/#section=data-r17

In certain use cases, it literally annihilates Golang for example and leaves node.js way, way, way behind.

Now, ignoring the numbers, there are many things you can do using PHP:

- web applications

- background services

- queue systems

Imagination is the limit (but that applies to any language these days)

There's plenty options to choose from, from web-related frameworks to community provided libraries, even the command line interface received a ton of cool libraries to play with. I can't state that you can do X in PHP but can't do the same in Y, Y being another language. However, frameworks such as Laravel make it trivial to bootstrap a project, create an API, create a nice UI using Vue (Laravel comes with excellent Vue tooling) and deploy the whole thing in a few easy steps to popular hosting providers.

Granted, it's not language specific, there was a huge community effort behind everything PHP related: from standards, to package manager, to tooling, utilities and so on so the ecosystem is quite healthy and progressing.

The nice thing about it, ultimately, is that it's really fast enough and keeps getting faster, with new (useful) language features.

If you're after a tldr version and don't care about the wall of text above:

Strenghts:

- excellent ecosystem http://www.packagist.org, http://www.getcomposer.org

- excellent *nix support, easy installation: https://launchpad.net/~ondrej/+archive/ubuntu/php

- great object oriented model that supports strong typing: http://php.net/oop

- excellent choice of web-app frameworks: https://laravel.com/, https://lumen.laravel.com/, https://symfony.com/

- big choice of extensions that expose additional functionality, such as swoole: https://www.swoole.co.uk/ or zeromq: https://github.com/mkoppanen/php-zmq

- great performance for an interpreted language

- easy scaling due to php-fpm http://php.net/manual/en/install.fpm.php (this has been available for a decade)




Async programming was there for a long time in the form of ReactPHP. With the caveat, of course, that comparatively few people know of it because of peculiarities of PHP's target audience. It's hard for something non-standard to gain traction in PHP.


Swoole looks exactly like some node.js code. The problem is that node has promises and async await while swoole/php has only callbacks right? No other mechanism..

That makes node a lot nicer to do async.




Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: