Web developers need a server to host their websites or web apps. Shared hosting is a bad idea due to non-standard arbitrary limits, hosting companies messing with your files without asking, and lack of ssh access or any other ports. Cheap virtual private servers from DigitalOcean or Linode are good for anyone familiar enough with Linux (or FreeBSD with D.O.). But another option is the Platform-as-a-Service (PaaS).
OpenShift is a PaaS from RedHat. It is not a VPS, but also not a shared host. It is like Heroku or Google App Engine. You don't own the server and not even a virtual slice of the server, like a VPS. But you also have much more control over what to install and run on the platform compared to a shared host, and you can SSH to your account. OpenShift's workflow is based on ssh and git.
OpenShift supports many languages, but it has hard-coded support for certain versions of languages. Its PHP support is for older versions of PHP. On a VPS you could easily install any version of any language. OpenShift makes it easy to upload and run your PHP scripts, but to change the PHP configuration itself requires getting into "cartridge" development which is much more complicated and specific to OpenShift.
I discussed in more detail how you would start using OpenShift gears (free tier) at VPS or Cloud Servers and OpenShift Paas.