Timeline on PHP7 Template?



PHP workspaces currently come pre-installed with PHP 5.5.9: http://php.net/supported-versions.php

This version is not even receiving security updates, and even PHP 5.6 and PHP 7.0 are out of active support. Many modern PHP frameworks don’t even work on 5.5.9:

  • Laravel: Requires 5.6 as of Laravel 5.3 and required 7.1 as of the most recent Laravel 5.6
  • CakePHP: Requires 5.6 as of CakePHP 3.0
  • Symfony: Requires 7.1 as of Symfony 4.0
  • Zend: Requires 5.6 (could not find older docs on their site to determine since when)

Even frameworks with support much, much older versions of PHP like CodeIgniter and Yii at least recommend PHP 7.0

Currently whenever I spin up a new project I have to:

  1. Choose the PHP template
  2. Set up the PPA for PHP7 (ondrej/php)
  3. Install php7.x and several extensions (xml, mbstring, zip, etc)
  4. Disable the old PHP Apache extension (a2dismod)
  5. Enable the new PHP extension (a2enmod)

This whole process not only takes 10-15 minutes, but I often forget a step and end up spending 30 minutes diagnosing why Composer isn’t working (which depends on the zip extensions) or why Apache is still using the old PHP version (if I forgot to run a2dismod).

At this point I think PHP 5.5.9 is old enough any reasonable developer could expect it to not be the default. Is there a timeline for updating the PHP template, or a timeline on adding a “custom templates” feature so we can create our own PHP7 templates?

Feature Request: Set document root with environment var in template