簡體   English   中英

安裝Xdebug for PHP CLI

[英]Installing Xdebug for PHP CLI

我在Mac OS上使用XAMPP ,嘗試使用PHPUnit的代碼覆蓋檢查,這需要XDebug xdebug.so文件附帶XAMPP所以我已經為PHP啟用了Xdebug:

// /Applications/XAMPP/xamppfiles/etc/php.ini
[xdebug]
zend_extension="/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so"
xdebug.remote_enable=1

現在,當我從Web服務器檢查時, phpinfo()的輸出中有一個Xdebug部分。

但是當我試圖檢查代碼覆蓋時,我收到一個錯誤:

$ phpunit --coverage-html report
PHPUnit 3.7.31 by Sebastian Bergmann.

The Xdebug extension is not loaded. No code coverage will be generated.

我認為CLI使用的不同於php.ini不是Apache。 要查找CLI正在使用哪個php.ini文件,我執行了以下操作:

$ php -i | grep "php.ini"
Configuration File (php.ini) Path => /etc

但是沒有/etc/php.ini所以我復制了一個:

$ sudo cp /Applications/XAMPP/xamppfiles/etc/php.ini /etc/php.ini

現在我正在檢查php -m的模塊,但是沒有Xdebug而且我收到了這個錯誤:

$ php -m
Failed loading /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so:  dlopen(/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so, 9): Symbol not found: _zend_execute_ex
  Referenced from: /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so
  Expected in: flat namespace
 in /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so
[PHP Modules]
bcmath
bz2
...

這是我的php.ini文件的內容(檢查最后一行。)

你能告訴我如何為PHPUnit和CLI啟用Xdebug嗎?

你有什么which php輸出?

看起來你正在使用系統范圍的PHP而不是XAMPP版本。 要使用XAMPP,請將PATH=/Applications/XAMPP/xamppfiles/bin/:PATH~/.bashrc

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM