2012-09-26 48 views
1

可能重複:
While I am debugging PHP Script in Eclipse, it doesn’t load mysql extensionPHPUnit的日食內啓動時啓動時忽略/etc/php5/cli/conf.d目錄

我怎樣才能讓PHPUnit的掃描/用於ini文件的etc/php5/cli/conf.d目錄?

我正在使用phpunit,但配置正確非常耗時。我剛剛遇到的一個問題是,我的php擴展的ini文件似乎沒有正確加載,當我在Eclipse中將Laura phpunit作爲「運行配置」運行時。 我基本上遵循本教程:http://pkp.sfu.ca/wiki/index.php/Configure_Eclipse_for_PHPUnit

當從日食(菜單Run ... /運行配置...)內運行,那麼 鏈接到

/etc/php5/conf.d/ 
目錄

/etc/php5/cli/conf.d 

未被分析。 因此,例如,文件

/etc/php5/conf.d/curl.ini 

被忽略。 我有一個班輪添加到ini文件

echo "extension=curl.so" >> /etc/php5/cli/php.ini 

這似乎解決了問題,但它是適得其反,因爲它打破了模塊化(和下一個DISTRI/PHP升級後將會消失)

爲了找到這個問題,我修改了phpunit.php ,在文件的開頭添加了對phpinfo()的調用。

這是輸出。

PHP Version => 5.3.10-1ubuntu3.4 

System => Linux wb3 3.2.0-31-generiC#50-Ubuntu SMP Fri Sep 7 16:16:45 UTC 2012 x86_64 
Build Date => Sep 12 2012 18:58:31 
Server API => Command Line Interface 
Virtual Directory Support => disabled 
Configuration File (php.ini) Path => /etc/php5/cli 
Loaded Configuration File => /tmp/zend_debug/session6700026373526677062.tmp/php.ini 
Scan this dir for additional .ini files => (none) 
Additional .ini files parsed => (none) 

當我檢查/tmp/zend_debug/session6700026373526677062.tmp/php.ini:使用 grep的-C 2延伸

我沒有輸出

添加延長= curl.so到/etc/php5/cli/php.ini 當我運行PHPUnit的Eclipse的運行配置

curl擴展被加載但結果是不同的,當我運行後從命令行運行phpunit。 現在,我得到

phpunit --debug --verbose MyClass 
PHP Warning: Module 'curl' already loaded in Unknown on line 0 

更新:(無解答)

,我發現我的問題解決方法:

我創建了文件系統的自定義php.ini文件,包含所有內容都附加了,並且在Eclipse的Eclipse Preferences中,我使用我的專用php.ini爲php5解釋器創建了一個新配置。

在Eclipse運行配置菜單中,設置配置對話框,我只需指向新的php5配置。

但是這並沒有解決問題,所以我仍然在尋找答案。它是一個日食問題還是一個phpunit問題?我現在不知道。

回答

1

這是Eclipse PDT的預期行爲。有關更多信息,請參閱the similar question and my answer

+0

謝謝。似乎我的解決方法是解決此問題的唯一方法。在日蝕臭蟲報告(由你發現)中,其他幾個人提到了這個技巧。 – knb