Home >Backend Development >PHP Tutorial >PHP version selection 5.2.17 5.3.27 5.3.28 5.4 5.5 Compatibility Issue Analysis_php Digest
Edited by: Maizi
Everyone must be confused when choosing a PHP version. There are so many versions, which one should you choose?
Question:
We have now bought a new server, using Windows Server 2008 r2. Configure the php 5.4 environment.
But we used 2003 and PHP version 5.2 before we developed it. If we transplant it to the new server, will there be any impact on the running of the program? Or are there other issues I need to pay attention to?
API version
PHP adopts a backward-compatible upgrade method for major versions, which means that 5.5 is compatible with 5.1-5.4. Having said that, the compatibility is actually not optimistic, and you should not expect any good solutions from the PHP official. Now in September 2013, the versions are 5.2.17 5.3.27 5.4.17 5.5.3
5.2.17
This version can be said to be the most widely supported version. Most open source software now uses this version, such as Drupal7.23, Joomla2.5, and most domestic software: dedecms5.7, discuzX3, etc. The latest version is still available. In support of 5.2, if there are no special requirements, installing this version is the most trouble-free and labor-saving, but it may eventually be abandoned in the long run. Nowadays, many hosting companies are too lazy to upgrade the PHP version in order to save labor costs, and basically support it anyway. (Insert a word here. In order to be compatible with more installation environments, domestic software is now very well-intentioned. Even PHP5.1 can support it (discuzX3 does not support it). The most rare thing is that the performance is not far behind, and it can do this. It’s really not easy!) Drupal6 is recommended to use this version.
5.3.28 (recommended)
Although the name of this version starts with 5, many people think it is the beginning of PHP 6.0 version. The performance has been improved, and because many APIs have changed, the compatibility with 5.2 is not very good. Although some open source software claims to be able to It is compatible with 5.2-5.3, but there seems to be a lot of problems, and many simply give up on 5.2. For example, Joomla3 only supports 5.3 and above. For Drupal7, it is strongly recommended to use this version, the support is quite good. This version can also be used for Drupal8, and the support is quite good. This version is widely used and strikes a good balance between performance and compatibility.
5.4 (gently recommended)
5.4 is basically close to complete. It is relatively complete at present, and its stability and performance are also good. Drupal7. If you are too lazy to upgrade later, you can install this version in one step.
5.5
Starting from 5.3, future versions will basically focus on performance improvements, and functions and other functions will be backward compatible. Starting from 5.5, there seems to be a 64-bit version with more powerful performance. I have not tried it and dare not comment.
Summary
If open source software says that it is recommended to install PHP5.3, then you should just use 5.3 instead of 5.5. You may think that it is compatible anyway and the performance may be better, so why not use the new one? That’s what I say, but you know that open source software is usually developed in a specific environment when it is developed. No matter how good the compatibility is, there will be unexpected surprises (no matter how powerful the team is, it is impossible to conduct compatibility testing on all function APIs, then It’s quite a terrible workload!), it will only be tested and optimized in a specific environment, and even if it knows there are compatibility issues, the team will not modify it to be compatible with higher versions. It’s not that they are rigid, but for safety. and stability are considered. In an open source atmosphere, we should have the awareness that “what’s enough is the best” rather than “the latest is the best”. For example, Joomla 3.1 does not run well in 5.4-5.5, and even the installation cannot be successful. But Drupal runs normally under 5.5.3 (on this machine). I think it is an isolated case? But it seems that unexpected errors have occurred during operation. I don’t know if it is a version problem. I hope it is not.
None-thread-safe or thread-safe
Apache generally chooses none-thread-safe, and IIS chooses the latter (FAST-CGI). I won’t explain it. Brother Xin is right.
The editor of Script House would like to add: In 2003 systems, we generally use isapi to load. If it is 2008 and above systems, we use fast-cgi.
64-bit and 32-bit selection issues
If your system is 64-bit, choose 64-bit. If your system is 32-bit, choose 32-bit. No explanation, Brother Xin.
The editor of Script House added: In many cases we cannot guarantee that all the software we need to load in iis is 64-bit, and some software must be compatible with 32-bit format.
The original website address is: http://cnmaizi.com/tech/php-version.html