phpinfo()上的PHP版本比终端上的版本旧
因此,我在macOSX上的php存在版本控制问题。我的终端上显示的版本是正确的,显示的是PHP7.4.2。然而,当我在我的项目上打开phpinfo()时,我得到 关于这个主题,我一直在寻找的所有帖子都是关于终端如何隐藏在phpinfo()上显示的内容,而我得到的却是相反的结果。我使用自制软件安装php,因为我需要使用7.4。然而,我觉得PHP7.1在我安装7.4之前就已经存在了,也许它是mac上的内置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
- 放置“导出路径=“/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新的位置@难以置信的帽子