We now offer the latest version of PHP! You can upgrade directly from 5.5/5.6 to the new version 7.0.
PHP version 7.0 is now available to our customers. You are free to continue using version 5.5/5.6, but this is not possible in all cases. In this blog post, we will explain which situations allow this, what limitations there are, and the benefits of using PHP 7.0.
Update from April 06th 2016
Important information regarding PHP versions on Ubuntu LTS 16.04
After the initial publication of this blog entry, it has become clear that the next LTS version of Ubuntu will most likely not contain a PHP 5.x version. Hence nine.ch will not be able to provide PHP 5.6 on new servers running Ubuntu LTS 16.04 - contrary to statements made here earlier.
The blog message has been updated accordingly.
Upgrading to PHP 7.0
When upgrading to the new version, we also generally recommend updating the operating system by installing Ubuntu 16.04. We make this process easy by offering parallel operation of two servers, allowing you to test and modify your code under PHP 7.0 at your own leisure.
You can of course continue running Ubuntu 14.04 and PHP 7.0, though it should be noted that PHP 7.0 in combination with 14.04 is not within the scope of LTS and in some cases must be removed before the EOL of Ubuntu 14.04.
New in PHP 7.0
PHP 7.0 offers the following new features:
- Faster than PHP 5.6
- Lower RAM requirements
- Consistent 64-bit support
- Improved exception handling (various fatal error notifications are now “simply” exceptions)
- Better security (removal of obsolete and non-supported add-ons)
- Scalar and return declarations supported
- Support for anonymous classes
What configurations does PHP 7.0 support?
As with new versions, downward compatibility is not always supported. Here we will explain which configurations support PHP 7.0.
Note: Ubuntu Xenial (16.04) is not yet available, but will be available from nine.ch in the near future, so we will still be covering it in this post.
|PHP version||Trusty (14.04)||Xenial (16.04)|
|5.5||available (default)||not available|
What do I need to keep in mind when upgrading to PHP 7.0?
When upgrading from PHP 5.6 to PHP 7.0, there are no officially documented incompatibilities for the existing code. There are still a few things to keep in mind, however:
- UTF-8 is now used as the default character encoding. This is particularly relevant if your database uses latin1 encoding, for example.
- Certain package names have been renamed - Our support team has taken this into consideration for our Managed line of products and made the necessary changes.
- PHP settings are generally applied globally, meaning that the configured values apply both to PHP 7.0 and PHP 5.6
What limitations are there with PHP 7.0 in terms of existing nine.ch products?
- ionCube Loader is not currently available for PHP 7.0
- Zend Guard loader is not currently available for PHP 7.0
- Licences are required to use libpdf
Can I continue running PHP 7.0 under Trusty with modphp or FPM?
Yes, that’s possible, but it should be noted:
- By default, the PHP 7.0 pool is used for PHP-FPM. However, it can be upgraded for each vHost separately via nine-manage-vhosts (there are specific templates that can be used in this case for PHP 5.6 and PHP 7.0).
- The PHP 7.0 pool is used by default for modphp, but can also be changed to PHP 5.6 (considered a global, i.e. server-wide setting). Simply send an email to our support team. They will be happy to assist you and complete the necessary configuration.
To order PHP 7.0, please contact our support team by sending an email to firstname.lastname@example.org or calling +41 44 637 40 00. For technical questions, contact our operations team by emailing email@example.com or calling +41 44 637 40 40.