How to Upgrade PHP 8.1 to PHP 8.2 on Ubuntu: A Complete Guide

Upgrading PHP to the latest version is essential to keep your applications secure, optimized, and compatible with the latest features. This guide walks you through upgrading from PHP 8.1 to PHP 8.2 on an Ubuntu system step-by-step.

Why Upgrade to PHP 8.2?

PHP 8.2 introduces several improvements, including:

  • Readonly Classes: Improved encapsulation.
  • Enhanced Performance: Faster execution and resource optimization.
  • Better Type Checks: Strengthened type safety.
  • Security Enhancements: Patches for vulnerabilities.

Upgrading ensures your system benefits from these advancements and remains up-to-date with industry standards.

Prerequisites

Before you begin, ensure the following:

  1. Ubuntu 18.04, 20.04, or later installed.
  2. PHP 8.1 running on your system.
  3. Backup of your system or applications to prevent data loss.
  4. Sudo privileges.

Step 1: Verify and Add the PHP PPA Repository

PHP packages for Ubuntu are provided by the ondrej/php PPA. Check if it’s already added:

grep -r "ondrej/php" /etc/apt/sources.list* /etc/apt/sources.list.d/
  • If found: Confirm its details using:
  cat /etc/apt/sources.list.d/ondrej-ubuntu-php-*.list
  • If not found: Add the repository:
  sudo apt-get install software-properties-common
  sudo add-apt-repository ppa:ondrej/php
  sudo apt-get update

Step 2: Install PHP 8.2 and Required Extensions

Install PHP 8.2 and the necessary extensions based on your application’s requirements:

sudo apt-get install php8.2 php8.2-cli php8.2-fpm php8.2-mysql php8.2-xml \
php8.2-curl php8.2-mbstring php8.2-zip php8.2-gd php8.2-intl php8.2-soap \
php8.2-bcmath php8.2-xdebug

Step 3: Configure PHP Version for Your Web Server

  1. Disable PHP 8.1 and Enable PHP 8.2:
   sudo a2dismod php8.1
   sudo a2enmod php8.2
  1. Restart Apache:
sudo /opt/lampp/lampp restart   
sudo systemctl restart apache2

Step 4: Update the Alternatives System

Set PHP 8.2 as the default version using Ubuntu’s alternatives system:

sudo update-alternatives --set php /usr/bin/php8.2
sudo update-alternatives --set phpize /usr/bin/phpize8.2
sudo update-alternatives --set php-config /usr/bin/php-config8.2

Step 5: Restart Services

Restart services to apply changes:

  • For Apache:
  sudo systemctl restart apache2
  • For Nginx with PHP-FPM:
  sudo systemctl restart php8.2-fpm
  sudo systemctl restart nginx

Step 6: Verify PHP Version

Confirm the installed version:

php -v

Expected output:

PHP 8.2.x (cli) (built: ...)

Step 7: Test Your Application

  1. Check error logs for warnings or compatibility issues.
  2. Verify core functionality like:
  • Database interactions
  • File uploads
  • API integrations
  1. Ensure all necessary PHP extensions are active.

Conclusion

By following this guide, you can seamlessly upgrade to PHP 8.2 and enjoy its new features and performance improvements. Always back up your system and test applications post-upgrade to ensure everything works smoothly.

Stay updated, stay secure!

Related Post

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x