我在 Snow Leopard 上阅读了一些关于内置Apache / PHP的帖子之前,曾经使用 MAMP (标准)进行PHP开发。我决定转向我提供的那些,但似乎有很多问题。
第一件事是当我使用MAMP时,我将PEAR从1.9.0升级到1.9.1(稍后安装PHPUnit),引用来自this post。使用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: which php
ngocminh@MBP[449]:bin$ which php
/usr/bin/php
答案 0 :(得分:1)
我建议你坚持使用MAMP有几个原因
来自apple的软件更新可能会破坏您对操作系统级别的PHP和MySQL所做的自定义。
MAMP可以轻松停止,因此只在需要时消耗系统资源。
对MAMP的更改不太可能影响系统的任何其他部分
你没有表明任何转换的原因,所以你造成了不必要的麻烦,只是为了可能回到你已经在MAMP的地方
我使用Komodo二进制文件通过MAMP运行XDebug。我建议你做同样的事情,除非有理由通过PECL安装你自己的。如果您需要从命令行访问php,请This post may be relevant。