Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
phpinfo()上的PHP版本比终端上的版本旧_Php_Macos_Apache - Fatal编程技术网

phpinfo()上的PHP版本比终端上的版本旧

phpinfo()上的PHP版本比终端上的版本旧,php,macos,apache,Php,Macos,Apache,因此,我在macOSX上的php存在版本控制问题。我的终端上显示的版本是正确的,显示的是PHP7.4.2。然而,当我在我的项目上打开phpinfo()时,我得到 关于这个主题,我一直在寻找的所有帖子都是关于终端如何隐藏在phpinfo()上显示的内容,而我得到的却是相反的结果。我使用自制软件安装php,因为我需要使用7.4。然而,我觉得PHP7.1在我安装7.4之前就已经存在了,也许它是mac上的内置php版本 我尝试过但不起作用的事情: 放置“导出路径=“/usr/local/opt”/ph

因此,我在macOSX上的php存在版本控制问题。我的终端上显示的版本是正确的,显示的是PHP7.4.2。然而,当我在我的项目上打开phpinfo()时,我得到

关于这个主题,我一直在寻找的所有帖子都是关于终端如何隐藏在phpinfo()上显示的内容,而我得到的却是相反的结果。我使用自制软件安装php,因为我需要使用7.4。然而,我觉得PHP7.1在我安装7.4之前就已经存在了,也许它是mac上的内置php版本

我尝试过但不起作用的事情:

  • 放置“导出路径=“/usr/local/opt”/php@7.4/sbin:$my.bash\u配置文件中的路径“”
  • 使用自制软件删除和重新安装php
  • 使用“apachectl restart”重新启动Apache服务器数千次
  • 删除了XCode及其开发人员文件夹
  • 以胎儿的姿势在角落里哭

有人有其他建议吗

您安装了多个php版本,应该更改apache使用的版本。首先禁用旧模块sudo a2dismod php7.1,然后启用新模块sudo a2enmod php7.4。
不要忘记在此操作后重新启动apache。

由@vadim发布的答案在技术上是正确的,但由于a2enmod在我的mac上不工作,我需要在httpd.conf文件中手动更改它。php7_模块指向7.1 libphp7.so文件。我所做的只是找到了自制程序安装的libphp7.so文件,并将httpd.conf中的位置更改为指向该文件。

您使用的是mamp还是安装apache2?转到httpd.conf并确保加载了正确版本的PHP请参见
LoadModule
7.1.33是我的macOS 10.14.6在命令行中显示的内容。您可以通过
php-i
(与执行phpinfo()相同)看到这一点。我怀疑apache配置正在寻找原始安装。Homebrew可能不会覆盖7.1,而是安装到apache未获悉的其他位置。命令行提供的PHP版本与作为模块加载的PHP版本完全无关。这些是完全不同的东西。使用apache2,我有LoadModule php7_module libexec/apache2/libphp7.so,php-我给了我php7.4.2,我如何告诉apache新的位置@难以置信的帽子