Update from PHP 8.1 to PHP 8.2
Drupal is a content management system built with the PHP programming language; in simple terms, PHP is the language Drupal “speaks” to run your website, process pages and communicate with the database.
Upgrading PHP is therefore part of keeping Drupal itself supported and secure, rather than an optional internal change unrelated to the platform.
Why Upgrade to PHP 8.2?
Migrating from PHP 8.1 to PHP 8.2 is necessary because PHP 8.1 will reach end of life on December 31, 2025, after which it will no longer receive security updates or support, exposing applications to security vulnerabilities. The decision to upgrade PHP is not controlled by CERN or any team inside the organization, but is instead driven by the compatibility requirements set by Drupal, which recommends (and will soon require) newer PHP versions for continued stability and security.
How I am affected as a Site Owner?
As a site owner you need to take action ONLY if you have custom modules installed on your website.
How do I know if I have custom modules?
If you have a custom website, you should have received an email on the 7th of November 2025 with a list of the custom modules present on your site.
Email example:
We are planning to upgrade the CERN Drupal Distribution from PHP 8.1 to PHP 8.2 in the coming weeks (see OTG0158438).
As your website is customised, we ask that you please check if your custom modules are compatible with PHP 8.2
The following custom modules have been identified on your website:
Quick Node Clone (quick_node_clone)
Simplenews (simplenews)
I have custom modules installed in my site
If you have installed any custom modules, you need to ensure that these are compatible with PHP 8.2.
Check the module’s project page for PHP 8.2. compatibility mentions
- Go to the module’s page on Drupal.org and look for notes about “PHP 8.2” or “Requirements” in the sidebar and release notes.
To check your module, visit its page on Drupal.org by replacing <MODULE_NAME> in the link below with your actual module’s name:
🔗 https://www.drupal.org/project/<MODULE_NAME>
For example, if your module is
quick_node_clone, the link would be: 🔗 https://www.drupal.org/project/quick_node_clone - If it states “PHP 8.2 compatible” or shows issues fixed for PHP 8.2, that’s a good sign. A label stating "secure" is also a good indication of the module’s reliability.
- If unclear, open the “Issues” tab and search for “PHP 8.2” to see if there are known problems or fixes.
Feel free to open a ticket with us if you require any clarifications.
References
- PHP Supported Versions and EOL: php.net
- PHP Requirements: Drupal PHP migration
- OTG: OTG0158438