hazardous

thoughts, things, etc. from andrew snow

using PHP in 2021

What is happening!?

It seems like PHP is becoming more unusable!

I don't have much to go off of here except to note some things:

  • alot of older software is getting harder to install
    • grav
    • getsimpleCMS
  • WordPress still seems to work, although over time the admin panel accrues alot of warnings and permissions errors
  • PHP is no longer being supported on Windows1

software issues

As mentioned above, two pieces of software I have had trouble setting up are Grav and getsimpleCMS.

Grav is a relatively more popular, and well-maintained, PHP-driven CMS. So far, I have failed in my attempts to set it up. A part of this involved upgrading the hazardous server to PHP 8.0 - from the longtime version 7.2 which has powered the web for quite some time now.

I'm still trying to get a copy of it running - I'll have to spin up a server running a copy of ubuntu 20 LTS, and see if it really boils down to making sure you are running with the most current software. I wouldn't be too surprised to find this to be the case, given the increasing focus on PHP-related vulnerabilities.

This is compunded by the problems I had trying to install a copy of getsimpleCMS - one of my favorite older pieces of software I could use to quickly deploy a lightweight blog. It's showing its age to such an extent that even running nginx causes it to throw warnings during install2, but this hasn't ever been a serious issue.

The real problems started with the install itself - at least three lines in the install.php file used deprecated commands! This means running it will require using an older version of PHP, most likely version 7.2.

takeaway

At least for now, it looks like PHP will be going through the same growing pains we saw in the Python community as it shifted to version 3 from the longtime-favorite version 2 codebase.

However, there is a massive difference in terms of both active community size, and the overall desire or even need to focus on backwards compatibility. In some cases it will be warranted - with PHP projects built using platforms like composer or the Laravel framework.

Regardless, the short-term is going to be filled with alot of frustration and disappointed users. Definitely not a good time to be getting into PHP-driven web development.

Which itself is something of a downer - end of an era. The future will likely be driven by apps programmed in more rugged languages like go, ruby and javascript, deployed by effortless packaged server solutions. Learning how to oversee a traditiona; LAMP / LEMP stack is becoming an obsolete pursuit...


  1. reddit discussion 

  2. gsCMS depends on a custom .htaccess file for security, so it's just a matter of translating the included file into their nginx-equivalent location rules.