Changes between Version 34 and Version 35 of howto/PHP


Ignore:
Timestamp:
Jan 10, 2024, 9:53:37 PM (4 months ago)
Author:
ryandesign (Ryan Carsten Schmidt)
Comment:

Add php83

Legend:

Unmodified
Added
Removed
Modified
  • howto/PHP

    v34 v35  
    1313MacPorts includes several versions of PHP. You can install any or all of these versions simultaneously, though it is expected that you will only need to install one of them.
    1414
    15 * '''php82''': PHP v8.2.x. This is the latest stable version. Security support until 8 Dec 2025.
     15* '''php83''': PHP v8.3.x. This is the latest stable version. Security support until 23 Nov 2026.
     16* '''php82''': PHP v8.2.x. This is an older stable version. Security support until 8 Dec 2025.
    1617* '''php81''': PHP v8.1.x. This is an older stable version. Security support until 25 Nov 2024.
    17 * '''php80''': PHP v8.0.x. This is an older stable version. Security support until 26 Nov 2023.
     18* '''php80''': PHP v8.0.x. This version reached [https://www.php.net/eol.php end of life] on 26 Nov 2023
    1819* '''php74''': PHP v7.4.x. This version reached [https://www.php.net/eol.php end of life] on 28 Nov 2022.
    1920* '''php73''': PHP v7.3.x. This version reached [https://www.php.net/eol.php end of life] on 6 Dec 2021.
    20 * '''php72''': PHP v7.2.x. This version reached [https://www.php.net/eol.php end of life] on 30 Nov 2020 and is therefore not recommended.
    21 * '''php71''': PHP v7.1.x. This version reached [https://www.php.net/eol.php end of life] on 1 Dec 2019 and is therefore not recommended.
    22 * '''php70''': PHP v7.0.x. This version reached [https://www.php.net/eol.php end of life] on 10 Jan 2019 and is therefore not recommended.
    23 * '''php56''': PHP v5.6.x. This version reached [https://www.php.net/eol.php end of life] on 31 Dec 2018 and is therefore not recommended.
    24 * '''php55''': PHP v5.5.x. This version reached [https://www.php.net/eol.php end of life] in 2016 and is therefore not recommended.
    25 * '''php54''': PHP v5.4.x. This version reached [https://www.php.net/eol.php end of life] in 2015 and is therefore not recommended.
    26 * '''php53''': PHP v5.3.x. This version reached [https://www.php.net/eol.php end of life] in 2014 and is therefore not recommended.
    27 * '''php52''': PHP v5.2.x. This version reached [https://www.php.net/eol.php end of life] in 2011 and is therefore not recommended.
    28 
    29 
    30 This page shows how to install and use the php82 family of ports, but you can use another version if you prefer; all of these ports use a similar directory layout.
     21* '''php72''': PHP v7.2.x. This version reached [https://www.php.net/eol.php end of life] on 30 Nov 2020.
     22* '''php71''': PHP v7.1.x. This version reached [https://www.php.net/eol.php end of life] on 1 Dec 2019.
     23* '''php70''': PHP v7.0.x. This version reached [https://www.php.net/eol.php end of life] on 10 Jan 2019.
     24* '''php56''': PHP v5.6.x. This version reached [https://www.php.net/eol.php end of life] on 31 Dec 2018.
     25* '''php55''': PHP v5.5.x. This version reached [https://www.php.net/eol.php end of life] on 21 Jul 2016.
     26* '''php54''': PHP v5.4.x. This version reached [https://www.php.net/eol.php end of life] in 3 Sep 2015.
     27* '''php53''': PHP v5.3.x. This version reached [https://www.php.net/eol.php end of life] in 14 Aug 2014.
     28* '''php52''': PHP v5.2.x. This version reached [https://www.php.net/eol.php end of life] in 6 Jan 2011.
     29
     30
     31This page shows how to install and use the php83 family of ports, but you can use another version if you prefer; all of these ports use a similar directory layout.
    3132
    3233= Step 1: Install PHP SAPIs = #install
     
    3536
    3637||=SAPI                    =||=Port                =||=Install command                         =||
    37 || Command line             || php82                || `sudo port install php82`                ||
    38 || Apache 2 module          || php82-apache2handler || `sudo port install php82-apache2handler` ||
    39 || FastCGI                  || php82-cgi            || `sudo port install php82-cgi`            ||
    40 || FastCGI Process Manager  || php82-fpm            || `sudo port install php82-fpm`            ||
     38|| Command line             || php83                || `sudo port install php83`                ||
     39|| Apache 2 module          || php83-apache2handler || `sudo port install php83-apache2handler` ||
     40|| FastCGI                  || php83-cgi            || `sudo port install php83-cgi`            ||
     41|| FastCGI Process Manager  || php83-fpm            || `sudo port install php83-fpm`            ||
    4142
    4243
    4344= Step 2: Install PHP Modules = #modules
    4445
    45 The SAPI ports contain the core PHP features, but there are many optional features available in separate ports, some of which you may want to install as well. Use `port search php82` to see all the ports that are available.
     46The SAPI ports contain the core PHP features, but there are many optional features available in separate ports, some of which you may want to install as well. Use `port search php83` to see all the ports that are available.
    4647
    4748Installing a PHP module automatically makes it available to all PHP SAPIs of the same PHP version.
     
    5051
    5152||=Database server         =||=Port                =||=Install command                         =||
    52 || MySQL, MariaDB, Percona  || php82-mysql          || `sudo port install php82-mysql`          ||
    53 || ODBC                     || php82-odbc           || `sudo port install php82-odbc`           ||
    54 || Oracle                   || php82-oracle         || `sudo port install php82-oracle`         ||
    55 || PostgreSQL               || php82-postgresql     || `sudo port install php82-postgresql`     ||
    56 || SQLite                   || php82-sqlite         || `sudo port install php82-sqlite`         ||
     53|| MySQL, MariaDB, Percona  || php83-mysql          || `sudo port install php83-mysql`          ||
     54|| ODBC                     || php83-odbc           || `sudo port install php83-odbc`           ||
     55|| Oracle                   || php83-oracle         || `sudo port install php83-oracle`         ||
     56|| PostgreSQL               || php83-postgresql     || `sudo port install php83-postgresql`     ||
     57|| SQLite                   || php83-sqlite         || `sudo port install php83-sqlite`         ||
    5758
    5859
     
    6162Set up your PHP configuration files. For development purposes use:
    6263{{{
    63 $ cd /opt/local/etc/php82
     64$ cd /opt/local/etc/php83
    6465$ sudo cp php.ini-development php.ini
    6566}}}
    6667or for a production server:
    6768{{{
    68 $ cd /opt/local/etc/php82
     69$ cd /opt/local/etc/php83
    6970$ sudo cp php.ini-production php.ini
    7071}}}
    71 then make changes to that newly created php.ini file - ''/opt/local/etc/php82/php.ini''
     72then make changes to that newly created php.ini file - ''/opt/local/etc/php83/php.ini''
    7273
    7374= Step 4: Install phpMyAdmin  = #phpmyadmin
     
    8687= Trouble shoot =
    8788If by some reason the server still doesn't interpret PHP files (i.e. your web client tries to download them) it means the PHP configurations, as described at [[howto/MAMP#job1]], are not taking effect.
    88 Typically,  the file ''"Include etc/apache2/extra/mod_php82.conf"'' - is not being processed; the file is missing; or the contents incorrect. That file contains the two "AddType" lines below.
     89Typically,  the file ''"Include etc/apache2/extra/mod_php83.conf"'' - is not being processed; the file is missing; or the contents incorrect. That file contains the two "AddType" lines below.
    8990
    9091==  Verify your config file again! ==
     
    9697}}}
    9798This will return either "Syntax OK" or a specific line by line error listing.
    98  The typical error message:  ''"Could not open configuration file /opt/local/etc/apache2/extra/httpd-mod_php82.conf: Permission denied"''
     99 The typical error message:  ''"Could not open configuration file /opt/local/etc/apache2/extra/httpd-mod_php83.conf: Permission denied"''
    99100After correcting any config errors and saving the updated config file, simply run:
    100101{{{