They released PHP5.6.0 on Aug-27 21:52:22. Actually, it was about half a day earlier than the release on php.net, and time lag between the two I sometimes experience recently. So, this afternoon, I migrated from PHP 5.5.16 to PHP 5.6.0 on my Web server (Windows7 HP + SP1 (x86)). Here is its ChangeLog.
They say “Most improvements in PHP 5.6.x have no impact on existing code. There are a few incompatibilities and new features that should be considered, and code should be tested before switching PHP versions in production environments.” and it is true. I didn’t need any changes on existing codes. However, migrating from PHP 5.5.16 to PHP 5.6.0 in my case. If migrating from more older version, you might need some changes.
I did not change my old php.ini except about mbstring. PHP 5.6.0 has UTF-8 as its default charset, so I thought I does not need the customization about mbstring anymore. If you run production sites, you should use a php.ini based on the php.ini-production INI file that the official package includes. The php.ini-development INI file is for development environments.
The following table shows my new configuration for the version 5.6.0. Drive_SV that is my server software partition.
|1||output_buffering = 4096||output_buffering = Off|
|2||disable_functions =||disable_functions =”shell_exec, suexec, passthru, phpinfo”|
|3||expose_php = On||expose_php = Off|
|4||; extension_dir = "ext"||extension_dir = "Drive_SV:\PHP\ext\"|
|5||allow_url_fopen = On||allow_url_fopen = Off|
|12||;date.timezone =||date.timezone ="Asia/Tokyo"|
|13||;sendmail_from = firstname.lastname@example.org||sendmail_from = My email address|
|14||mysql.allow_persistent = On||mysql.allow_persistent = Off|
The 1 and 14 settings might give some troubles on your server. It depends on your server environment.
The 11 and 15 – 20 are values for OPcache. So if you don’t use OPcache, leave the default for them. To change mbstring settings might give some bad effects to server performances. I am having wait-and-see attitude.
As you see, I do not use MySQL Extension on my server anymore. I use MySQLi Extension only.
I’ll show you my server software versions.
- Apache 2.4 Win32 from Apache Lounge
- ActivePerl 5.18(x86) from ActiveState
- PHP 5.6(x86) from PHP.net
- MariaDB 10.0 Win32 from MariaDB.ORG
I’ve almost forgot to write. This time I had a trouble which gave me an error ‘Bad Host request’.
It was BulletProof Security’s fault. Ha-ha-ha. So I disabled the plugin before PHP version up. Then I enabled it again after the PHP migration.