PHP 4 End of Life Announcement
perbert writes "The PHP development team has announced that support for PHP 4 will continue until the end of this year only. After 2007-12-31 there will be no more releases of PHP 4.4. Critical security fixes will be made available on a case-by-case basis until 2008-08-08. For documentation on migration for PHP 4 to PHP 5, there is a migration guide. There is additional information available in the PHP 5.0 to PHP 5.1 and PHP 5.1 to PHP 5.2 migration guides as well."
I hope that everyone has moved beyond PHP 4.X by this point. 5.X is more secure and capable.
Put identity in the browser.
If only the subject had left out the "4." "PHP End of Life." I'd cheer for that. I'd say good riddance to a braindead language.
-matthew
"THERE IS NO JUSTICE, THERE IS ONLY ME." -Death
PHP is like training wheels without the bike.
While I can completely understand the need for this to occur, I can see this causing alot of problems for many small businesses, personal webpages, and hosting companies. PHP5 is definitly worthwhile switching to from PHP4, but there are so many poorly coded sites out there that wont run properly under PHP5, and this at some point is going to cause a nightmare for various hosting companies.
Your typical small business or personal webpage will frequently use PHP, and have little knowledge of how to fix their code to get it working, or how to upgrade their 3rd party software to a PHP5 Compatible version. At the same time hosting companies who will reach a point where they need to upgrade to PHP5 in order to keep their systems as secure as possible (because PHP4 security fixs might not be coming out) will be faced with many angry customers who are unwilling to spend time or money to change a site that they see as working previously.
I can completely understand why a company might need to stop supporting an old version of their product at some point when newer ones are freely available, I just am not looking forward to all the headaches its going to cause. I can hear the phones of angry customers threatening to kill me because i "broke their site" now.
Oh well, hopefully all PHP5 code will wind up working just fine in PHP6 when it comes out.
http://interserver.net/
I have a large (ahem... LARGE) codebase written in PHP4 that's running CentOS 4. Supposedly, CentOS will be updated until 2010. But how could they keep this promise if the underlying packages are no longer supported?
Guess I'll have to see what PHP5 will do to my software, thinking I could put this off for another couple years.
(sigh)
I have no problem with your religion until you decide it's reason to deprive others of the truth.
Sorry, all I have done in PHP was modify or patch other programs so I do not know much about it.
But in Java/J2EE, I still run applications that were developed (and even compiled sometimes) in java 1.0 on the java 5 platform without any changes or security issues. I see some "backward incompatible changes" in the PHP migration info.
With the java/J2EE/jsp programs I have running here and there, I sure do enjoy the care the maintainers of a language take to insure backward compatibility even if it is sometime a little more difficult and involves deprecating faulty methods and creation of equivalent with new names instead of changing the behaviour of existing methods.
So this seems strange to me but hey ! I don't want the PHP community to start throwing flames at me and java, we would quickly get outnumbered I would guess ;-)
Everything I write is lies, read between the lines.
I just wish it wasn't PHP..
I work for a reasonably large hosting company that held off until a few months ago to announce that we're going to PHP5 in a few weeks. Before this point, we'd had a steady trickle of 1-2 customers a month asking when we are going to PHP5. Since the announcement, we've had up to 4-5 customers a week complaining that they will leave if we dare upgrade, they can't stand companies that change things for the sake of upgrading, etc. etc. The fact is that there are a *lot* of small business websites, designed for them by some employee x years ago, which will break when we go V5 (heck, even disabling register globals screws up most of these client sites) and the customer has no employees capable of fixing it. We've been helping customers with extra hand-holding when it comes to ensuring they will be ok, but it is costing us time to support these customers, and a reasonable percentage will simply leave us a week before the swap.
I really do believe their will be massive demand for a PHP 4 only reliable host rolling their own security updates, after end of life. I know a reasonable percentage of our client base that would likely consider them...
PHP 4 has been around for forever, and PHP 5 is so much more powerful with the new object model. I've been driving myself mad trying to ensure PHP 4 compatibility for one of my projects, and not being able to use basic OOP features like class constants and public/private/protected variables can drive you batty. It's good that someone at Zend Corp has finally stepped up to the plate and gave PHP 4 its long-deserved kick in the pants. And PHP 5 isn't that hard to migrate to, you can compile it from source and have it installed in 2 hours max with no downtime if you read the manual and know what extensions you need and how to compile them.
--Dan
I know I'll get mod'd down for this (it's not off-topic, just read more carefully:), but the fact remains: With PHP 4 no longer supported, it has become clear that the typical excuses for Perl ("but it's installed on so many of my hosts that haven't seen an upgrade since 1998!") is no longer relevant. Legacy is dead! Long live PHP 5!
Don't worry about hosting companies. In my experience picking up multiple accounts on various Web hosts, shared hosting sites tend to avoid breaking tons of Web applications on their boxes with over 500 different sites by simply not patching them. Worse, certain hosts don't even keep a good patch management scheme or support scheme; I've seen for example Fedora Core 2 and Fedora Core 4 boxes while FC5 was nearing its EOL (FC4 being dead for months already), and any patches were hand-compiled. RHEL boxes cost money, some hosts don't want to pay for a support contract; CentOS is fairly popular in the business world because of this.
Shared or managed hosting doesn't equal security. Don't trust it.
This is a great move I think. php 5 has been out for years, superior and pretty backward compatible to php 4. Many problems in the past with 4.3/4.4 and 5.0/5.1 releases have happend due to the backward compatibility of php 5. I hope this will ease development and result in a robuster solution.
b le.phpt ion5.changes
Becasue php5 is already in the wild for years and there is still more than a year of security updates available, I think there should be time enough for migration to php5. I is also not too hard to migrate, I have done this in the last 1-2 years on many sites. There are some really annoying changes in php 5 but the php guys have documented it well [1].
Using the "Migrating from PHP 4 to PHP 5"[2] Documentation was very helpfull and it turned out to be pretty easy (except for scripts/applications which were already ported from php 3 and still were using php 4 backward compatibility "features").
1) http://www.php.net/manual/en/migration5.incompati
2) http://www.php.net/manual/en/migration5.php#migra
Coinciding with this announcement is the launch of a campaign to switch major PHP-based Web applications to PHP5-only support. The GoPHP5.org website has details.
Projects supporting this move have pledged that by Feb. 5, 2008, they will no longer accept PHP4-specific changes in their codebase and that all future upgrades will assume PHP5 availability.
This doesn't mean they are rewriting all their code to OOP-style, or that they will end legacy version support for security patches, et cetera. What it means is that the developers are liberated from having to code around PHP4's limitations and can take advantage of PHP5 features for all future enhancements.
Often something that might require hundreds of lines of code in PHP4 can be done with just a few in PHP5. The SimpleXML parser is probably the best example.
Application teams already on board for this switch include Drupal, phpMyAdmin, Typo3, Symphony, Gallery, DeskPRO, and many others. Several major projects not yet committed are known to be preparing to do so.
This is most important to hosting companies as a signal that robust PHP5 support is a requirement going forward.
I know lots of places still installing CentOS 4.
yum updates for Centos 4 will not upgrade your php.
Is php that full of holes that they can't continue to support it?
-- these are only opinions and they might not be mine.
Every benchmark I have ever come across shows php 5.2.x vs 4.4.x is 20-30% slower.
That's another reason why people delay updating, especially on shared servers.
I have a few sites hosted through HostGator running php 4.4.4 as an Apache module. Recently they "upgraded" to phpsuexec 4.4.4 which runs as cgi. They are touting it as more secure and reliable bla bla bla.
6 f88e85e97402645b68bd0dc1be8&t=8822
Well it broke http authentication on a few pages which ruined my day.
Changelist here http://forums.hostgator.com/showthread.php?s=1f60
Maybe it would have been better to upgrade to PHP5.
"Things that experienced programmers will cringe at because they know full well that it will likely cause a headache later."
Instead of complaining about php, "experienced programmers" can do anything with any tool. either it is PHP, Perl, Ruby, Python, ASM, C/CPP. or alienian symbols. They adopt any language well enough to do anything they want. Any one who still complaining about PHP is definitely not "experienced" neither in PHP nor programming at all. because PHP is in most cases powerful enough!
China, in fact, is very fragile.
But as web pages became more complex, soft typing, lack of proper scope, and lack of OOP patterns made developing complex PHP applications a world of horror.
I have yet to see a good example of an OOP framework noticably improving code maintenence over a procedural equivalent for the type of apps where PHP is usually used.
That being said, a lot of the incompatibility between 4 and 5 is a revising and cleaning up of the PHP OOP model to better reflect Java's approach to OO, and tuning for heavier OO use. Since Java was an OO-centric language from the start, it didnt' have this issue.
It would be like trying to incrimentally bolt on Functional Programming (like Higher Order Functions) constructs onto Java. If after a point your realize the hacked-on FP model stunk, you would have to create versioning problems to revamp it to do it right. Perhaps if Java decides to clean up its meta-model, it would have similer problems. This is because Java's meta-model was not given much thought early on, remaining a weak-point of Java.
Table-ized A.I.
Tiger shipped with PHP4 installed, and there is basically one guy, Mark Linyage, who is packaging a PHP5 installer for Tiger.
:-/
Unfortunately, he refuses to support older versions of Mac OS, and for various reasons I'm still working with Panther on my laptop and some of our servers, so I have been struggling mightily to get PHP5 to compile and install.
I wish Apple would provide some support for these 'freebies' they include with the OS, but their attitude seems to be "if we didn't invent it, it's not our problem."
- Nick
"Slow down, Cowboy! It has been 3 years, 7 months and 26 days since you last successfully posted a comment."
Comment removed based on user account deletion
Comment removed based on user account deletion
I understand you people keep commplaining about some legacy defects of PHP. Legendary monsters like "Magic Quotes", lack of native UTF8 support, "interpreted", "weak typed", and a lair of countless functions are worst enemies of you noble architects of codes.
But in my real world, text-based web applications need very few of those acadamical design. The PHP official website hosts , for example, not a full-featured MVC frameworks, but a template engine called Smarty, which is roughly an equivent to the View part of the classical MVC pattern. Why so? Because in PHP applications, Models are mostly nothing but SQL queries and largely can be mixed with the Controllers. So, we all can see in PHP world, people concerns more about HTML output than the church-like academical, mysterious code behind webpages in languages like Java. This output-centred way of programing could be the reason why PHP has more beautiful, creative websites than any other programming language. Lets just count those Forum, Wiki, CMS, On-line Shop products. All-mighty Java on the other hand always has industrial beauty in its code, but has very few web application/website that is received as beautiful, or reusable on the context level..
In its design, PHP script needs to be excuted in a very short time(better in millisecond). the longer the worse performance is. PHP's not a right language for tasks like encoding or decoding some video clips, nor is any other scirpting language. So the complex logics which need multi-layer abstraction with classes and objects from mechanical level calls to device to business logic simply do not fit for PHP. PHP's job is doing mainly top-level business logics with texts(T from HTML). And for business logics, even the real braindead language like VBS can handle them very well, not to mention it is PHP which does support OOP. Wise asses should pick the right tool for the right job.
To those who favors Python, Perl, or Ruby, i just say those languages don't have an unified, universal solution as PHP gives us.
China, in fact, is very fragile.
A good PHPer should write codes that works in both PHP4 and PHP5.
It's not hard. Normally code which runs good in STRICT error reporting mode of PHP4 can run under PHP5 without changes.
I have been doing this for three years. My local development evironment is the lastest PHP5.2x+ Mysql6.x beta + apache 2.2
but my deploy evironment is still in PHP4.x. My code works fine all the time;
China, in fact, is very fragile.
I have a client with several hundred websites, many of which were done in the late 90s and early 00's on PHP3. Many of them break in PHP4 in some way or another unless you enable all the insecure compatibility stuff. Moving to PHP5 breaks most of them in very bad ways. The cost of updating several hundred websites, each written by different developer(s), sometimes changed by different people over a period of years, developed mostly by overseas contractors working for nothing, and most originally developed for PHP3 is absolutely insane.
.NET, which seems (for now at least) to maintain a reasonable level of security and compatibility across multiple versions over several years. Granted PHP has gone from a broken hobbiest toy to a more professional, more secure platform since PHP3, but how much of what is written in PHP5 will be broken entirely in PHP7 a couple of years down the line? How many times do I have to go back and re-write the same thing because the methods that were so great at the time were found to be horribly insecure?
.NET unless it's something ridiculously small. Frankly, unless PHP can establish a long-term (where 'long-term' means longer than 3-4 years) framework of usable and secure methods, it's going to burn itself. In other words, unless PHP5's methods are usable and securable in 2009, it cannot remain a major force in anything other than hobbiest sites and the sites of those who just plain don't know any better. ColdFusion's death came far more swiftly than it should have due to the fact that once you moved up a couple of versions, major parts of your applications began to break. That's unheard of in HTML, C/C++, or most other things in the software world.
Thus the client remains on (now unsupported) PHP4 with some insecure settings in place to support the broken PHP3 stuff, and has essentially no path for a feasible upgrade. All this makes me less likely to do future projects in PHP and more likely to do them in
I'm not claiming any one thing is the be-all, end-all, perfect solutions; merely pointing out that PHP's track record thus far is not making me particularly comfortable with continuing to use it in any significant way. Anything I can do in PHP I can now do faster and easier in
The idea of "get it today and it's obsolete tomorrow" is fine for hardware; not for software.
-- "Government is the great fiction through which everybody endeavors to live at the expense of everybody else."