PHP 8.2 Update Timeline

Security support for PHP version 8.1 will end on November 25, 2024. As part of VIP’s continued focus on your application’s security, we are committed to ensuring all customers have updated to PHP 8.2 ahead of this date.  Below, you will find VIP’s PHP update timeline.

If customers have not updated their environments by the dates outlined, VIP will update the environments on the customer’s behalf. Please note that any updates made by VIP could result in issues if the proper customer testing has not been completed. If issues arise, we’ll do our best to assist where we can, but ask that you please test and deploy the update ahead of this schedule, to avoid any interruptions. This update cannot be deferred, and VIP is here to support you and your team as you work toward it.

VIP Timeline For Environments Not Yet On PHP 8.2

Tuesday, October 29, 2024
VIP Updates Non-Production Environments to PHP 8.2

VIP will begin updating all non-production environments that are not yet on PHP 8.2. We are proceeding with non-production environments first to provide customers time to address any issues that arise as a result of the update, before updating production environments.

Tuesday, November 12, 2024
VIP Updates Production Environments to PHP 8.2

VIP will begin updating all production environments that are not yet on PHP 8.2. After this date, working with your teams on post-update issues will be the priority. 

Earlier PHP Version Options Removed
The option to select PHP version 8.1 will be removed from the software management tool

Monday, November 25, 2024
PHP 8.1 End of Life

Security support for PHP 8.1 ends.


Let VIP Do The Heavy Lifting!

Instead of the do-it-yourself approach, focus on your key priorities while our experienced staff manage, validate, and implement your PHP update for you with the specific needs of your applications in mind. Maximize your team’s resources, improve site stability, and unlock peace of mind with our Upgrade Assurance Service. This is a popular new service that we offer, for both WordPress and PHP updates, so we recommend securing your spot early. If you’re interested in learning more, please connect with your Relationship Manager, or reach out to our Support Team.

Helpful Resources

Support
VIP is here to help along the way, and our Support team is always available to answer questions as you and your team work through the update. Please don’t hesitate to reach out if you need assistance.

Tooling
Your application’s software versions can be managed directly by you in the VIP Dashboard.

Documentation
We have helpful documentation available to guide you through preparing your application code for a PHP update.


PHP 8.3 is available!

In case you missed it, VIP announced the availability of PHP 8.3, in December 2023. We strongly encourage your team to stay ahead of the PHP update curve, and begin testing and updating to PHP 8.3 this year. 

Future PHP End-of-Life Dates

To better plan for the road ahead, please be aware of the current security support end-of-life (EOL) schedule for the following PHP versions. These dates are pulled from the official PHP schedule, here. VIP will continue to post to the Lobby with our updated timeline for each year, which will likely follow the same outline as shared above, wrapping up roughly 2 weeks ahead of the PHP date.

PHP Update Timelines

Deprecated PHP VersionVIP Version Update CompletePHP Security Support EOL
8.1November 12, 2024November 25, 2024
8.2November 24, 2025*December 8, 2025
8.3November 9, 2026*November 23, 2026
*Date is tentative

PHP 8.3 Available on WordPress VIP

We are excited to announce the availability of PHP 8.3 on WordPress VIP. This version introduces a host of new features, improvements, and deprecations. Here are some of the key highlights:

  • Typed class constants, dynamic class constant fetch.
  • #[\Override] attribute for clearer method overriding. By adding the #[\Override] attribute to a method, PHP will ensure that a method with the same name exists in a parent class or in an implemented interface.
  • Deep-cloning of readonly properties. 
  • json_validate() function allows to check if a string is syntactically valid JSON, while being more efficient than json_decode().
  • The Random Extension that was added in PHP 8.2 was extended by a new method to generate random strings consisting of specific bytes only. This method allows the developer to easily generate random identifiers, such as domain names, and numeric strings of arbitrary length. Randomizer::getFloat() and Randomizer::nextFloat() methods were also added  to generate random floats in an unbiased fashion.

There are new classes, interfaces, and functions, along with deprecations and backward compatibility breaks. This release emphasizes improved type safety and syntax clarity. For more details, visit the PHP 8.3 Release Announcement.

Testing your application with PHP 8.3

It’s always a good idea to test your application code with every new release of PHP.

WordPress VIP recommends that you use several methods to prepare for a PHP upgrade.

Scan your codebase for incompatibilities

Review the WordPress VIP documentation “Prepare application code for a PHP version upgrade” guide and perform the scan.

Test with the VIP Local Development Environment

We recommend using the VIP Local Development Environment to test your application code locally.

Create a new environment with PHP 8.3: 

vip dev-env create --slug=mytestsite --php=8.3

Or update an existing local environment with PHP 8.3: 

vip dev-env update --slug=mytestsite --php=8.3

Test with a non-production VIP Platform environment

To update your non-production environments to PHP 8.3, either use the Software Management feature in the VIP Dashboard, or run the vip config software update command with VIP-CLI. For example:

vip @mytestsite.testing config software update php 8.3


Please Note: Currently, our minimum supported version is 8.1. Security support for 8.1 ends on November 25, 2024. WordPress VIP will be looking to begin updating environments that are not on 8.2 or higher, up to 30 days prior to this date. A formal timeline will be shared in January 2024.

Reminder: PHP Updates Begin in 30 Days

OCT 26 UPDATE: The ability to roll back to a version earlier than PHP 8.1, will remain available in the software update tool, through Sunday, November 26- the last day of security support by PHP. Earlier version options will be permanently removed on Monday, November 27, 2023.

In July, we called your attention to the upcoming security support end-of-life for PHP 8.0, and the timeline that VIP has outlined, to prepare customers ahead of the formal PHP deadline of November 26, 2023.

We are now 30 days out from the first wave of VIP updates commencing, and are taking this opportunity to remind customers to please test and deploy the update ahead of this schedule, to avoid any interruptions. Below are a few scenarios we’ve outlined to ensure your teams know what to expect. In addition, our PHP Updates documentation was recently updated to include a more robust outline to help your teams address these updates now, and in the future.

Customer Scenarios

Ideal: We’ve tested and deployed the update ahead of the VIP schedule.
Amazing! There will be no surprises for your team, and VIP will not touch your application when running our updates. 

Incomplete: We’ve tested this update, and are going to wait for VIP to run the update.
While it’s awesome that you’ve tested your application(s) against the update, we don’t recommend waiting for VIP to run the update for you, for a few reasons:

  • VIP may run the update at a time in which your team is not available. If the update deploys with no issue, this is not a problem, but if it doesn’t, having your team available to address any issues with your application puts your business in a better position. 
  • While differences between test environments and production environments may be minor, we know that there is always the possibility for tweaks needed after a production deployment. We suggest eliminating that variable ahead of time.
  • Updating the software version of PHP can be managed directly from the VIP Dashboard.

Risk: We have not had time to test the update ahead of the VIP schedule.
VIP is not able to defer this update. We are adhering to the PHP schedule, and keeping your application secure is a top priority. If VIP runs the update without a customer testing first, there is a possibility that your application may run into issues that your team needs to rapidly address.


VIP Timeline for Non-Updated Environments

Monday, October 30, 2023

VIP Updates Non-Production Environments to PHP 8.1
VIP will begin updating all non-production environments that are not yet on PHP 8.1. We are proceeding with non-production environments first in order to provide customers time to address any issues that arise as a result of the update, before updating production.

Monday, November 13, 2023

VIP Updates Production Environments to PHP 8.1
VIP will begin updating all production environments that are not yet on PHP 8.1. After this date, working with your teams on post-update issues will be the priority. 

Earlier PHP Version Options Removed
The option to select PHP version 7.4 (deprecated) and 8.0 is removed from the software management tool

Sunday, November 26, 2023

PHP 8.0 End of Life
Security support for PHP 8.0 ends.


Questions?

Please don’t hesitate to reach out to our Support team with any questions.

PHP 8.1 Update Timeline

OCT 26 UPDATE: The ability to roll back to a version earlier than PHP 8.1, will remain available in the software update tool, through Sunday, November 26- the last day of security support by PHP. Earlier version options will be permanently removed on Monday, November 27, 2023.

PHP 8.0 will lose security support on November 26, 2023. VIP prioritizes your application’s security, and we are committed to ensuring all customers have updated to PHP 8.1 ahead of this date.  Below, you will find VIP’s PHP 8.1 update timeline.

If customers have not updated their environments by the dates outlined, VIP will update the environments on the customer’s behalf. Please note that any updates made by VIP could result in issues if the proper customer testing has not been completed. If issues arise, we’ll do our best to assist where we can, but ask that you please test and deploy the update ahead of this schedule, to avoid any interruptions. This update cannot be deferred, and VIP is here to support you and your team as you work toward it.

PHP 8.1 Timeline for Non-Updated Environments

Monday, October 30, 2023

VIP Updates Non-Production Environments to PHP 8.1
VIP will begin updating all non-production environments that are not yet on PHP 8.1. We are proceeding with non-production environments first in order to provide customers time to address any issues that arise as a result of the update, before updating production.

Monday, November 13, 2023

VIP Updates Production Environments to PHP 8.1
VIP will begin updating all production environments that are not yet on PHP 8.1. After this date, working with your teams on post-update issues will be the priority. 

Earlier PHP Version Options Removed
The option to select PHP version 7.4 (deprecated) and 8.0 is removed from the software management tool. 

Sunday, November 26, 2023

PHP 8.0 End of Life
Security support for PHP 8.0 ends.


How can VIP help?

Support
VIP is here to help along the way, and our Support team is always available to answer questions as you and your team work through the update. Please don’t hesitate to reach out if you need assistance.

Tooling
Your application’s software version can be managed directly by you in the VIP Dashboard.

Partners
Could your team benefit from experienced, extra hands to address this update? We’d be happy to connect you to one of our Featured Partner agencies who can assist via a short-term engagement. Our Partnerships team would be happy to recommend a partner who would be a good fit. If you’re interested in being connected with a partner, please submit the form on this page, and our Partnerships team will be in touch. 

Documentation
We have helpful documentation available to guide you through preparing your application code for a PHP update.


PHP 8.2

In case you missed it, VIP is pleased to announce the release of PHP 8.2. If your team would love to stay ahead of the PHP update curve, we recommend testing and updating to PHP 8.2 this year. This means your team would not need to tackle another PHP update until late 2025

PHP 8.2 Available on WordPress VIP

We are excited to announce the availability of PHP 8.2 on WordPress VIP. This version introduces a host of new features, improvements, and deprecations. Here are some of the key highlights.

New features

Readonly Classes: PHP 8.2 introduces the concept of readonly classes. This allows you to define classes where certain properties are read-only and cannot be changed after they are set in the constructor.

Disjunctive Normal Form (DNF) Types: DNF types allow us to combine union and intersection types, following a strict rule: when combining union and intersection types, intersection types must be grouped with brackets.

Allow null, false, and true as stand-alone types: In PHP 8.2, null, false, and true can be used as stand-alone types. This allows for more precise type declarations in your code.

New “Random” extension: The “random” extension provides a new object-oriented API to random number generation. Instead of relying on a globally seeded random number generator (RNG) using the Mersenne Twister algorithm, the object-oriented API provides several classes (“Engine”s) providing access to modern algorithms that store their state within objects to allow for multiple independent seedable sequences.

Constants in traits: PHP 8.2 allows you to define constants in traits. However, you cannot access the constant through the name of the trait, but, you can access the constant through the class that uses the trait.

Deprecations and backward incompatible changes

  • Deprecated dynamic properties: The creation of dynamic properties is deprecated, unless the class opts in by using the #[\AllowDynamicProperties] attribute. stdClass allows dynamic properties. Usage of the __get()/__set() magic methods is not affected by this change. 
  • Deprecated ${} string style interpolation
  • Deprecated utf8_encode and utf8_decode functions.

Additional information about deprecations and the full list of backward incompatible changes can be reviewed on the PHP.net website.

More detailed information about all of the changes in PHP 8.2 is available in the official PHP 8.2 release notes.

Testing your application with PHP 8.2

It’s always a good idea to test your application code with every new release of PHP.

WordPress VIP recommends that you use several methods to prepare for a PHP upgrade.

Scan your codebase for incompatibilities

Review the WordPress VIP documentation “Prepare application code for a PHP version upgrade” guide and perform the scan.

Test with the VIP Local Development Environment

We recommend using the VIP Local Development Environment to test your application code locally.

Create a new environment with PHP 8.2: 

vip dev-env create --slug=mytestsite --php=8.2

Or update an existing local environment with PHP 8.2: 

vip dev-env update --slug=mytestsite --php=8.2
An example of VIP-CLI command to create a new environment

Test with a non-production VIP Platform environment

To update your non-production environments to PHP 8.2, either use the Software Management feature in the VIP Dashboard, or run the vip config software update command with VIP-CLI. For example:

vip @mytestsite.testing config software update php 8.2
Software Management - PHP screen
An example of CLI comand to update the local dev env

WordPress DB_* constants will be automatically defined for PHP 8 compatibility

For PHP versions 8.0 and newer, accessing an undefined constant will result in a fatal error — in older versions, it triggered a warning. To ensure utmost compatibility during our PHP 8.0 update path, we will be automatically defining the below constants on Tuesday, October 4 for all production WordPress environments:

  • DB_NAME
  • DB_HOST
  • DB_USER
  • DB_PASSWORD

This change is currently enabled for all non-production WordPress environments. We highly recommend checking your codebase to see if/how any of the above constants are being accessed to assess potential impacts.

It was not defined by default due to VIP’s drop-in usage of HyperDB and was not needed on older PHP versions (< 8.0). For more information on updating PHP 8 on WordPress VIP, please see our guide on getting started.

Working Together: The Path to PHP 8.0

In May, we announced that PHP 8.0 was now available on WordPress VIP environments. Since then, we’ve been excited to see many customers testing this version on their child environments, while other customers have completed the update to PHP 8.0 on their production sites.

WordPress VIP wants to ensure that every customer is supported along their PHP 8.0 update path and that no one scrambles toward the finish line. To aid your planning, take note of the key dates below. The timeline provides high-level milestones for WordPress VIP customers to keep everyone on track and mitigate potential risks as early as possible. 

WordPress VIP Update Timeline

While Nov. 28, 2022 is the date PHP 7.4 will stop receiving security updates, WordPress VIP will begin updating any customer not yet on PHP 8.0 on Monday, Nov. 15, in an effort to minimize risk of security vulnerabilities. Please review the timeline below, and reach out to your Technical Account Manager or our support team with questions.

MONDAY, AUG. 1, 2022

All new environments are created on PHP 8.0

Existing customers begin creating any new environments on PHP 8.0. If you have an upcoming project in preparation, work with your Technical Account Manager, who will help you incorporate this into your planning. If you have questions or concerns, create a ticket with our support team. If you’re a Premier customer, your account team is already aware of this timeline and can also answer questions.
*New customers have already begun launching their sites on PHP 8.0.

THURSDAY, SEPT. 15, 2022

Customer check-in: All non-updated customers

Customers who have not yet updated all environments to PHP 8.0 receive communication inquiring about a target migration date. The goal is to help us understand potential risks and make sure you’re on your way to a successful update.

MONDAY, OCT. 17, 2022

30 days from deadline: Customers planned for VIP update

WordPress VIP begins formalizing a plan to update customers who have not updated to PHP 8.0 and who have not provided a target date for updating in advance of Nov. 15. We will reach out to customers with next steps and flag potential risks.

Note: Customers updated by WordPress VIP will not have a rollback option. Issues related to the update will be the responsibility of the customer to address and solve. 

TUESDAY, NOV. 1, 2022

Last day to roll back to PHP 7.4

Our goal is to have all WordPress VIP customers updated to PHP 8.0 before Nov. 1. After this date, working with your teams on post-update issues will be the priority.

TUESDAY, NOV. 15, 2022

WordPress VIP updates any customer applications not yet on PHP 8.0.


How to prepare your WordPress site for PHP 8

If you’re just getting started, but have more questions than answers, we’ve got you covered. Our resident PHP expert, Gary Jones, Engineering Lead for Premier customers, has written a comprehensive outline covering everything from a PHP 8.0 overview and getting started, to looking for compatibility issues and considerations around PHP 8.1. Even if you have a finalized PHP 8.0 plan, it’s a great resource to review to make sure you’re covered. 

How to prepare your WordPress VIP site for PHP 8.0


Related VIP Documentation:

Linting and PHPCS changes for PHP 7.4-only applications

Following the availability of PHP 8.0 on WordPress VIP environments, a change is being made to the VIP Code Analysis Bot’s PHP multi-version linting abilities. Linting highlights code syntax and compilation errors. Starting today, all PHP files updated or added by pull requests will be linted using both PHP 7.4 and 8.0 for applications that currently only execute code using PHP 7.4. Before the change, sites running only PHP 7.4 would only be syntax checked with that particular PHP version.

The VIP Code Analysis Bot warning against a syntax problem in code using both PHP 7.4 and PHP 8.0. Before the change, only PHP 7.4 would have displayed an error in this case.

Similarly, the VIP Code Analysis Bot will also ask the PHPCompatibilityWP PHPCS standard to scan any added or changed code against PHP 8.0, instead of PHP 7.4 before. This change applies only to PHP 7.4 applications.

These changes are being made as PHP 7.4 will be going end-of-life soon, and all applications will be upgraded to PHP 8.0 by WordPress VIP in November 2022. The change will ensure any incompatibilities in new or altered code due to language changes in PHP 8.0 will be preemptively noted by the VIP Code Analysis Bot. Customers should review each incompatibility noted and apply a fix to the code as needed.

Please note that for applications that use other versions of PHP than PHP 7.4 or use any version combinations, there will be no change. Code added or altered by pull requests for these applications will be scanned only using the PHP versions they are configured to execute PHP code with. 

Customers should note that PHP linting by the VIP Code Analysis Bot of all files present in the relevant branch can be enabled rather than only modified files.

We recommend that steps posted in our initial lobby announcement are followed as soon as possible to make the transition to PHP 8.0 as smooth as possible.

PHP 8.0 available on WordPress VIP

Update: Please read this Lobby post, which contains an updated timeline & deadline for PHP 8.0 updates. PHP 8.1 is fully supported and available as part of our Software Management feature.

VIP is excited to announce that PHP 8.0 is now available on WordPress VIP environments.  PHP 8.0 is a major update that provides a plethora of new features and under-the-hood improvements. 

Some highlights of PHP 8.0 include named arguments, union types, attributes, constructor property promotion, match expression, nullsafe operator, JIT, improvements in the type system, error handling, and consistency.

Since this is a new major version, we strongly recommend that you test your application in a non-production environment running PHP 8.0. PHP 7.4 will be going end-of-life soon, so even if you are not taking advantage of these new features, now is the time to get a jump on the upgrade to PHP 8.0.

To test in a non-production environment, please open a ticket with our support team specifying which application(s) and the PHP version you’d like. In the near future, you’ll be able to control this via a setting in the VIP Dashboard and VIP-CLI.  We strongly encourage you to test in a non-production environment before updating in production.

To help your migration and testing of PHP 8.0, we recommend following these steps:

1. Update to our newly released version of VIP-CLI (2.9.5). You can pick the desired PHP version via `create` or `update` command to test new PHP versions locally.

Screenshot of VIP Local Development Environment Configuration Wizard showing PHP option

2. Update a non-production environment as soon as possible to get visibility into scan results and to ensure ongoing compatibility with PHP 8.0 via the VIP Code Analysis Bot. We have added multi-version linting to the bot, so if your repository powers several sites with different versions of PHP, the bot will check the Pull Request against each enabled version. See the screenshot below for an example:

VIP Code Analysis Bot flagging syntax errors for multiple versions

3. Review the WordPress VIP documentation “Prepare application code for a PHP version upgrade” guide and perform the recommended scan.

PHP 7.4 will stop receiving security updates on November 28, 2022. On this date, all sites on WordPress VIP still using PHP 7.4 will be upgraded to PHP 8.0 to minimize the risk from unpatched security vulnerabilities. 

PHP 8.1 is also available but WordPress core does not yet fully support PHP 8.1, so we strongly recommend against running it in production at this time. PHP 8.1 is fully supported and available as part of our Software Management feature. [Updated 24 August 2022]

Upcoming Changes: Supported Versions of WordPress, Jetpack, PHP, and Node.js, and Delaying Upgrades

At WordPress VIP we help you focus on being creative and innovative, while maintaining a high level of security and reliability on which to build.

Part of providing the highest level of service is ensuring that your software stack, including WordPress core, Jetpack, and PHP are kept on recent versions. That is why today we are announcing some upcoming changes to our policy on version upgrades for WordPress, Jetpack, and PHP.

Starting on July 20th, 2021, we are taking some steps to ensure all customers are able to take advantage of the latest features and security provided by utilizing the latest software available

WordPress

VIP supports the current version of WordPress, and one major version behind. 

Currently, most sites, regardless of WordPress version, are upgraded to the latest version on release day. This is the strategy we recommend for the highest security and to benefit from any new features.

Occasionally, some of our customers need additional time to test compatibility, and we’ve delayed upgrades for these on request. In order to ensure we can support security updates, we are limiting the length of time for these postponed upgrades.

Delaying Upgrades

Customers will only be permitted to remain on the prior major version of WordPress, and those will be subject to immediate point updates (normally, security related).

For example, at the moment, WordPress v.5.7 is the latest version, so the  WordPress VIP platform would support v.5.7, plus v.5.6.*. Once WordPress v.5.8 is released (expected on July 20, 2021), customers who requested to remain on v.5.6.* will be upgraded to v.5.7 or v.5.8 within 2 weeks; VIP will coordinate this change with customers to minimize any impacts. 

If a minor update is issued, all customers will be updated immediately: 5.8 to 5.8.1, and 5.7.2 to 5.7.3 for example.

This applies to all environment types – both production and non-production.

If you have environments currently running versions older than 5.7.x, and have questions, please contact your account team.

Why one version? Security.

According to the WordPress core team, only the latest active version of WordPress is actively supported

The WordPress core team attempts to backport security updates to older versions when possible, but there are no guarantees, and no timeframe for updating older releases. This can mean that sites running older versions cannot benefit from important security measures that may be publicly known. Point (minor) releases, in particular, are often security releases, or contain important security updates and bugfixes. 

In any case, the security of our customers’ sites is our highest priority and we will apply security upgrades immediately and without notice. 

Sites in “branch” or “trunk” 

WordPress VIP offers two options for testing upcoming versions of WordPress on your non-production environments: trunk and branch.

“Trunk” is used for the latest development version of WordPress. It is the newest possible version, but not necessarily a stable version. It includes Alpha and Beta versions and changes often. 

“Branch” is used for Release Candidates, and is upgraded as new release candidates are made available. These two versions are often used for testing in develop or preprod environments.

Going forward, any environments on “branch” sites will be upgraded to the release version on release day; environments running trunk will continue to track trunk until explicitly changed. 

Jetpack

VIP supports the current version of Jetpack, and one major version behind.  

For example, at the moment, Jetpack 9.7 is the latest version, so the  WordPress VIP platform would support v.9.7, plus v.9.6. Once Jetpack v.9.8 is released (expected on June 3, 2021), customers on v.9.6.* will be upgraded to v.9.7 or v.9.8 within 2 weeks. 

Plugins

We recommend that customers use the latest version of any plugin, for enhanced platform compatibility and security.

To learn more about plugin updates, please see our documentation.

PHP

We support a single version of PHP which is defined platform-wide. 

Currently that is v.7.4.18. We remain aligned with the official PHP team and only use versions of PHP which have Active Support.

Node.js

We support all Active LTS or Maintenance LTS releases, and the next Active LTS candidate of Node.js

For example, currently, this includes Node.js 12, Node.js 14, and Node.js 16. 

Pinning to non-major versions (e.g. 14.16.1) won’t be supported, and minor upgrades will be applied as soon as they’re made available. 

Platform-Wide Upgrade Schedule

You may be interested in the proposed timeline or roadmap for VIP Go updates.
Our platform-wide upgrade schedule can be found here.