how run multiple php version in same xampp version

Posted by

To run multiple PHP versions on the same XAMPP installation, follow these steps:

1. Download the Additional PHP Versions

  1. Go to PHP’s official website and download the additional PHP versions you need.
  2. Extract the PHP version files into the xampp directory, creating separate folders for each version, such as xampp/php7.4 and xampp/php8.0.

2. Configure Apache to Use Different PHP Versions

  1. Open the XAMPP Control Panel and stop Apache if it’s running.
  2. Go to the xampp/apache/conf/extra/ directory and open the httpd-xampp.conf file in a text editor.
  3. Find the following lines (these specify the default PHP version):
   LoadFile "C:/xampp/php/php7/php7ts.dll"
   LoadModule php7_module "C:/xampp/php/php7/php7apache2_4.dll"
   PHPIniDir "C:/xampp/php/php7"
  1. Replace the above paths with a variable so you can easily switch between PHP versions.
  • Define the PHP version path variables at the beginning of the file: Define php7 "C:/xampp/php7.4" Define php8 "C:/xampp/php8.0"
  • Add these conditionally loaded versions in separate <IfModule> blocks:
<IfModule php7_module> LoadFile "${php7}/php7ts.dll" LoadModule php7_module "${php7}/php7apache2_4.dll" PHPIniDir "${php7}" </IfModule> <IfModule php8_module> LoadFile "${php8}/php8ts.dll" LoadModule php8_module "${php8}/php8apache2_4.dll" PHPIniDir "${php8}" </IfModule>
  1. To switch PHP versions, comment out or uncomment the relevant block in httpd-xampp.conf for the version you want to use.

3. Create Virtual Hosts for Each PHP Version (Optional)

  1. Open the httpd-vhosts.conf file located in xampp/apache/conf/extra/.
  2. Add separate virtual host entries for each PHP version, pointing each one to the PHP directory version you want to use:
   <VirtualHost *:80>
       DocumentRoot "C:/xampp/htdocs"
       ServerName php7.local
       SetEnv PHP_VERSION php7
   </VirtualHost>

   <VirtualHost *:80>
       DocumentRoot "C:/xampp/htdocs"
       ServerName php8.local
       SetEnv PHP_VERSION php8
   </VirtualHost>
  1. Update your hosts file to include these domain names:
   127.0.0.1 php7.local
   127.0.0.1 php8.local
  1. Now, when you visit http://php7.local, it will use PHP 7, and http://php8.local will use PHP 8.

4. Restart Apache

Return to the XAMPP Control Panel and start Apache. Now, you can run different PHP versions on the same XAMPP installation using either conditional loading in httpd-xampp.conf or virtual hosts.

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x