29

我按照指南使用 home-brew 在 OSX Mountain Lion 上安装了最新版本的 php (5.4.8)。

然后我按照指南向我展示了如何在 OSX 上设置和使用预安装的 apache。

然而,当我尝试运行一个基本的 Symfony 2 项目时,我得到了一堆与 php.ini 中缺少 date.timezone 相关的错误。

但是我已经正确设置了 php.ini,但是在 Symfony 项目中快速执行 phpinfo() 表明它使用的是旧的预装版本的 php (5.3) 而不是新的。

如果我在终端中输入which php& php -v,它显示正在使用正确的新版本。

在此处输入图像描述

但是phpinfo()节目

在此处输入图像描述

在此处输入图像描述

4

3 回答 3

78

您是否遵循警告中提供的所有说明?

跑去brew info php54再次见到他们。

特别是这行:

要在 Apache 中启用 PHP,请将以下内容添加到 httpd.conf 并重新启动 Apache
LoadModule php5_module /usr/local/Cellar/php54/5.4.8/libexec/apache2/libphp5.so

于 2012-11-28T20:05:10.280 回答
2

Apache 不知道 PHP 的自制版本(即/usr/bin/php)。您在命令行上看到它是因为您可能已经修改了您的PATH(ie /usr/local/bin/php)。

您可以在 httpd.conf 文件中修改它。

我不喜欢自制软件或其他软件包库。主要是因为 Mac OS X 是在 Unix 之上构建的。此外,除 MySQL 之外的所有设备都是本地安装的。这是一篇关于在 Mac OS X 上安装 Apache、MySQL 和 PHP的文章。

免责声明:我写了那篇文章。

于 2012-11-28T19:59:43.497 回答
0

今天我有同样的问题,将 php 7.2 更新到 7.3 作为 Laravel 6 的要求。这是我的解决方案。

  1. 在“/etc/apache2/http.conf”中打开您的 httpd.conf 文件
  2. 搜索(Ctrl + w)“LoadModule php”
  3. 取消注释该行
  4. 使用“sudo apachectl restart”重启你的 apache

然后,您在本地 Web 服务器 (apache2) 中的 php 版本将被更新

于 2021-01-20T03:37:31.480 回答