我想在我的Mac上运行一些PHP,没有注释httpd.conf,激活网络共享,安装MySQL等。 我似乎找不到我的PHP文件,最重要的是,PHP.ini。

在我的旧机器上,它位于/usr/local/php5/lib 但是php5目录在/usr/local中不存在。

我需要取包裹吗?还是我找错地方了?

运行OS X 10.7.3, PHP 5.3.8, Apache/2.2.21


当前回答

我有不止一次的PHP实例运行,所以其他答案不适合我。这是:

创建一个PHP文件,并在浏览器中打开它的本地url:

<?php phpinfo(); ?>

PHP.INI路径将在靠近顶部的位置列出。

其他回答

1-找到。ini位置路径

打开终端,运行命令

php --ini

2-复制这个路径/usr/local/etc/php/7.4/php.ini 然后用命令打开它

nano /usr/local/etc/php/7.4/php.ini

3-使用键盘组合Ctrl+X进行更改并退出nano

4-完成后运行apachectl重启

我有不止一次的PHP实例运行,所以其他答案不适合我。这是:

创建一个PHP文件,并在浏览器中打开它的本地url:

<?php phpinfo(); ?>

PHP.INI路径将在靠近顶部的位置列出。

你运行php_info(),并看到如下行:)

Loaded Configuration File   /Applications/XAMPP/xamppfiles/etc/php.ini

这是一个相当老的帖子,但我想进一步澄清。

如果你有一个安装了多个PHP的系统(就像我的系统),你使用命令行工具得到的结果可能与web服务器实际使用的结果不同。如果你对web服务器使用的PHP感兴趣,只使用从使用“phpinfo()”函数的网页收集的信息。

例如,在我的系统上,两种不同方法报告的版本是:

命令行:5.3.26 网络:5.3.13

对于php.ini文件路径,情况也有所不同:

命令行:/private/etc/php.ini 网络:/长/道路/ / /文件/ php . ini

你可以使用下面的命令找到所有可能的php.ini文件:

查找/ name php.ini 2>&1 | grep -v "denied" | grep -v "directory"

('2>&1'和'grep'元素只是将命令的输出限制为有用的信息,即消除错误消息)

在我的系统上,我发现了3个INI文件。因为我对web服务器正在使用的东西感兴趣,所以我知道我应该使用从web页面结果返回的路径。我对列出的php.ini文件进行了更改,重新启动apache,并重新运行网页;那里显示了新编辑的内容。

重新启动apache。

Sudo apachectl -k restart

——J

@Cronk和@Justin的回答让我接近了Mac OS X 10.9 Mavericks。事实上,在我的系统上,/etc/php.ini文件完全丢失了,直到我在web服务器上运行phpinfo(),我才发现没有配置文件。从/etc/php.ini.default复制文件,并将完全限定路径添加到mcrypt。所以库到配置文件解决了这个问题:

cp /etc/php.ini.default /etc/php.ini

然后在/etc/php.ini中添加以下行(使用正确的路径到mcrypt. ini)。所以文件):

extension="/usr/local/Cellar/php54-mcrypt/5.4.29/mcrypt.so"

然后重新启动Apache2:

apachectl restart