2011-03-01 150 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'沒有任何問題。