随着PHP 7.2的推出,发现其性能相较于PHP 7.0有了显著的提升。因此,如果正在使用PHP 7.0,强烈建议升级到PHP 7.2。本文将指导如何在Linux环境下安装和配置PHP 7.2,以及如何安装和配置OCI8扩展,这对于许多现代Web应用程序来说是必需的。
在进行PHP升级之前,需要停止Apache服务。以下是在Linux系统中停止Apache服务的命令。请注意,以下命令假设不是以root用户登录的,因此需要使用sudo
来执行需要权限的命令:
sudo service httpd stop
为了安装PHP 7.2,需要添加EPEL和Remi仓库。以下是添加这两个仓库的命令:
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-6.rpm
为了设置PHP 7.2的默认仓库,需要安装yum-utils
,然后使用yum-config-manager
来启用Remi PHP 7.2仓库:
sudo yum install yum-utils
sudo yum-config-manager --enable remi-php72
如果系统中已经安装了PHP 5.x或PHP 7.0,需要先移除它们。以下是移除PHP 7.0的命令:
sudo yum remove php70u-common.x86_64
然后,可以使用以下命令来检查PHP是否已被完全移除:
sudo yum list installed | grep php
如果仍然看到与PHP相关的安装包,那么需要继续卸载它们。接下来,可以安装PHP 7.2及其相关扩展:
sudo yum install php php-pecl-mcrypt php-cli php-gd php-curl php-mysqlnd php-ldap php-zip php-fileinfo php-xml php-intl php-mbstring php-opcache php-process systemtap-sdt-devel php-pear php-json php-devel php-common php-bcmath php-pdo
安装OCI8可能会遇到一些挑战。首先,尝试使用以下命令安装:
sudo install php-oci8
然后,需要编辑php.ini
文件,添加OCI8扩展:
sudo vi /etc/php.ini
在文件的底部添加以下行:
extension=oci8.so
保存并退出vi
编辑器(输入:wq!
)。然后,使用以下命令检查PHP是否安装正确:
php -v
如果出现无法加载动态链接库oci8.so
的错误,可能需要重新安装Oracle Instant Client,或者确保已经安装了它。
需要为Linux客户端下载以下两个文件:
oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm
确保这两个文件在家目录中,然后使用以下命令安装:
sudo yum install oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
sudo yum install oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm
然后,设置Oracle Instant Client的库路径:
sudo sh -c "echo /usr/lib/oracle/12.2/client64/lib > /etc/ld.so.conf.d/oracle-instantclient.conf"
sudo ldconfig
最后,再次使用以下命令验证PHP是否安装正确:
php -v
应该看到没有错误,并且显示PHP 7.2的版本。
需要重启ApacheWeb服务器:
sudo service httpd restart
然后,在Symfony中查看“View phpinfo()
”链接,或者创建自己的页面使用以下代码:
<?php phpinfo(); ?>