PHP 4 End of Life

This is an old post!

This post is over 2 years old. Solutions referenced in this article may no longer be valid. Please consider this when utilizing any information referenced here.

For many, today marks the beginning of the Olympics. All eyes are on Beijing. But, 08/08/2008 also has some significance that many, unless they are web application developers, may miss.

Today is the official End Of Life for PHP 4.

Me and PHP go way back - pre-college, to my job at high school writing web applications. I used it to do minor things, but I tried to stick to Perl when I needed to do something on the site, and most of what I was doing at the time was VB6 anyways. I finally got serious about it when PHP4 was released while I was at Auburn. I wanted to write a gallery program for my website, and since Auburn didn’t let your run Perl scripts on the University web servers, my choices were Mivascript and PHP. I tried to implement what I wanted in Miva, but it was clearly inferior, so I hopped on my bike and rode down to the Hastings on Glenn and picked up a book on PHP.

It’s interesting when I look back on what a big deal that turned out to be. I got back to the dorm and started working on some scripts in PHP. I was able to get my gallery up and working in pretty short order. I started doing other things in PHP (I wrote an early blog feed on my site, abstracted out the headers and footers, wrote a quote listing tool, etc). Later on, I took another job at a local company doing graphic design at first (it was a foot in the door), but quickly moved into development in PHP when they needed some web application work done. This lead eventually to my move to Huntsville and my current full-time job doing software engineering.

Through all that, I got to witness the birth of PHP4. Its awkward early releases, its explosive growth, its fading and eventual replacement by the technically superior PHP5 and now finally its official death. And while I long ago moved to doing everything in PHP5 (currently 5.2), I’ll always be a touch nostalgic for the release that got my career started.

About the Author

Hi, I'm Rob! I'm a blogger and software developer. I wrote petfeedd, dystill, and various other projects and libraries. I'm into electronics, general hackery, and model trains and airplanes. I am based in Huntsville, Alabama, USA.

About Me · Contact Me · Don't Hire Isaiah Armstrong

Did this article help you out?

I don't earn any money from this site.

I run no ads, sell no products and participate in no affiliate programs. I do not accept gifts in exchange for articles, guest articles or link exchanges. I don't track you or sell your data. The only third-party Javascript on this website is Google Analytics.

In general I run this site very much like a 1990s homepage or early 2000s personal blog, meaning that I do this solely because it's fun! I enjoy writing and sharing what I learn.

If you found this article helpful and want to show your appreciation, a tip or donation would be very welcome. Feel free to choose from the options below.

Comments (0)

Interested in why you can't leave comments on my blog? Read the article about why comments are uniquely terrible and need to die. If you are still interested in commenting on this article, feel free to reach out to me directly and/or share it on social media.

Contact Me
Share It

Interested in reading more?

PHP

Using Phinx Programmatically

Phinx is a really cool database migration package that allows you to write changes to your database as code. It keeps track of which changes have been applied and allows you the option of rolling back if you hit an issue. All the documentation on Phinx describes a typical setup where you would run the phinx command to do your migrations. And that is all fine and good in most projects. But what happens if you are integrating Phinx into an existing project that already has a lot of the usual scaffolding in place?
Read More
PHP

Monitoring for Filesystem Changes using PHP and Laravel

Let’s say you have a Laravel application that does some data processing, and you want to monitor a directory for incoming changes, that you can then process using queued jobs. There are a couple of ways you could do something like this. You could scan those directories on a schedule using a cronjob. It’s doable. But what happens if you want to monitor a few thousand directories for changes? You can use tools like incron. Also doable, but another dependency. But what if I told you you could do it all with PHP. And within Laravel, no less?
Read More
Release Announcements

New Open Source Code

Launched two new pieces of open source code in the last couple of months. PlayerControls PlayerControls is a macOS Cocoa framework that creates a View containing playback controls for media like videos or sounds. It is written in pure Swift 4 and has no dependencies. SearchParser SearchParser is a parser that converts a freeform query into an intermediate object, that can then be converted to query many backends (SQL, ElasticSearch, etc). It includes translators for SQL (using PDO) and Laravel Eloquent ORM. It supports a faceted language search as commonly found on many sites across the web. It is written in modern PHP. Both are licensed under the MIT license. Go check them out on Github.
Read More