在我阅读一些关于在 Snow Leopard 上内置 Apache/PHP 的帖子之前,我曾使用 MAMP(标准)进行 PHP 开发。我决定转向我提供的那些,但似乎有很多问题。
第一件事是当我使用 MAMP 时,我引用 this post 将 PEAR 从 1.9.0 升级到 1.9.1(以便稍后安装 PHPUnit) . phpunit
命令对我来说效果很好。我也有 Xcode4,但几周前将其删除(我提到这个是因为我不知道是什么导致了我所有的麻烦)。
然后,当我尝试在 Snow Leopard 上使用默认的 Apache 和 PHP 时,我意识到我的 Mac 上可能有两个版本的 PHP。
当我尝试撤销 php -i
命令时,第一个是 5.3.3:
PHP 5.3.3 (cli) (built: Aug 22 2010 19:41:55)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
with Xdebug v2.1.0, Copyright (c) 2002-2010, by Derick Rethans
第二个是 5.3.4,当我使用 phpinfo()
运行文件或调用此 php-config --version
命令时,它实际上出现了。请看下面的截图:
============================================= ==========================
我的另一个问题是使用 PECL 安装 xdebug。您可以从上面的 php -i
命令中看到的是来自 Komodo 的预编译 xdebug.so(我阅读了 this post ),而不是每次我尝试安装 xdebug 时由 PECL 安装的东西,出现这些错误:
ngocminh@MBP[447]:~$ cd /usr/local/pear/bin/
ngocminh@MBP[448]:bin$ sudo ./pecl install xdebug
downloading xdebug-2.1.1.tgz ...
Starting to download xdebug-2.1.1.tgz (303,198 bytes)
..............................................................done: 303,198 bytes
66 source files, building
running: phpize
grep: /usr/include/php/main/php.h: No such file or directory
grep: /usr/include/php/Zend/zend_modules.h: No such file or directory
grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory
Configuring for:
PHP Api Version:
Zend Module Api No:
Zend Extension Api No:
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.
ERROR: `phpize' failed
整天为他们上网后,对这些乱七八糟的事情一无所知。请帮我弄清楚。如果您愿意,请随时向我询问更多详情。谢谢!!!
--编辑 1: 哪个 php
ngocminh@MBP[449]:bin$ which php
/usr/bin/php
最佳答案
出于以下几个原因,我建议您坚持使用 MAMP
Apple 的软件更新可能会破坏您对 PHP 和 MySQL 的操作系统级别版本所做的自定义。
MAMP 可以很容易地停止,因此只会在需要时消耗系统资源。
对 MAMP 的更改不太可能影响系统的任何其他部分
您没有说明任何切换的理由,所以您给自己造成了不必要的头痛,并且工作只是为了可能回到您已经使用 MAMP 的状态
我使用 Komodo 二进制文件通过 MAMP 运行 XDebug。除非有理由通过 PECL 安装您自己的,否则我建议您这样做。 This post may be relevant如果您需要从命令行访问 php,给您。
关于php - Mac OS Snow Leopard 上的两个版本的 PHP 和使用 PECL 安装 xdebug,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5789504/