2011-03-01 148 views
1

我想(有一些问题),我的系统,MAC OSX 10.6.6PHP语法错误在Mac OS X上安装梨时10.6.6

PHP安装梨工程确定,如Apache和MySQL。

放在/ usr /地方我跟着指示:

$ curl http://pear.php.net/go-pear.phar 

$ php go-pear.phar 

,我得到

PHP: syntax error, unexpected BOOL_FALSE in /private/etc/php.ini on line 1050 

我不知道这有什么错我的php.ini。

+1

我的建议是去php.ini的第1050行,以确定哪些配置标志出错。 – 2011-03-01 07:10:54

+0

请在1050行左右显示您的php.ini。 – lfx 2011-03-01 07:12:11

+0

你遵循的指示是什么? – Shoe 2011-03-01 10:29:10

回答

0

我查看php.ini的第一件事,当我看到错误。

这是什么样子周围行1050:


[Phar] 

; http://php.net/phar.readonly 

; phar.readonly = On 

; http://php.net/phar.require-hash 

;phar.require_hash = On 

;phar.cache_list = 

(仍然抓我的头......)

+0

我玩过它。我尝试phar.require_hash =关闭其他职位,但我得到相同的错误 – user617220 2011-03-01 15:49:17

+0

继续上下,寻找前面没有分号(;)的行 - 这些都被注释掉。 – 2011-03-01 16:00:54

+0

好的,这对我来说太复杂了。我认为*我曾尝试过phar.require_hash = Off - 我改变了PHP.ini,就像我之前用TextWrangler完成的那样,保存并重新启动了apache。但后来我运行phpinfo()并发现这个变化(以及我以前做过的其他许多变化)不在那里。看起来像apache读取错误的php.ini文件。不知道该怎么做:(( – user617220 2011-03-01 20:27:17

2

我终于想通了,所以我发布解决方案以备将来参考。

我的PHP.ini已损坏,所以我不得不返回到PHP.ini.default并重做所有更改。

然后,我改变:

phar.require_hash = Off 

在其他职位的建议,

最后补充说:

detect_unicode = Off 

宾果! 据我了解,Zend引擎的Unicode检查是默认启用在OSX 10.6和打开.phar

参考时,它会导致冲突:http://bugs.php.net/bug.php?id=42396
贷亚光/ technosophos张贴的解决方法。

+0

只需复制php.ini.default并添加/ usr/local/share/pear包含路径就可以修复它 – snez 2011-12-19 15:32:01

4

您还可以使用:

$ php -d detect_unicode=0 go-pear.phar 
0

作为新到Mac我只花了几个小时,试图找出为什么PEAR不安装在我的OSX 10.6.0设置(Apache和PHP 5.3.3是预先安装无PEAR)。试图按照通常的说明:

$ wget http://pear.php.net/go-pear.phar 
$ sudo php go-pear.phar 

...只会导致问号的字符串(“??????”),并没有进一步的错误信息,即使我已使显示的所有错误。

最后,通过从macports(当前版本为5.3.5)重新安装PHP5来解决问题。一旦我这样做了,'sudo php go-pear.phar'没有任何问题。