[英]PHP: How can I tweak PHPUnit to use a different PHP interpreter?
我的系統有兩個PHP解釋器。 一個是捆綁了操作系統,另一個是通過XAMPP包安裝的。 我的所有PHP擴展都應用於XAMPP安裝,但PHPUnit似乎只運行我的機器附帶的PHP版本。
有沒有人知道我可以配置或重建PHPUnit的方式,以便它只使用我的XAMPP PHP解釋器?
對於Mac / Linux,phpunit腳本的第一行以
#!/usr/bin/php
改變為
#!/Applications/XAMPP/xamppfiles/bin/php
或者你想要使用的任何其他PHP解釋。
找到你安裝PHPUnit的文件夾。應該有一個名為phpunit.bat的文件。 它應該有一行類似的東西
set PHPBIN="C:\php\php.exe"
%PHPBIN% "C:\php\phpunit" %*
將其更改為已讀
set PHPBIN="C:\xampp\php\php.exe"
%PHPBIN% "C:\xampp\php\phpunit" %*
或者你的PHP可執行文件的路徑是什么
與托馬斯的聲明一致,另外還有一條線在下面
if (strpos('/Applications/MAMP/bin/php5.3/bin/php', '@php_bin') === 0) {
set_include_path(dirname(__FILE__) . PATH_SEPARATOR . get_include_path());
}
我被告知你也應該改變以反映你有興趣使用的PHP(我明確地將我的設置為MAMP)
我最近在5.2和5.3之間來回切換:)
這適用於在Mac OS 10.9上使用Homebrew安裝的phpunit。 我正在編輯位於/usr/local/Cellar/phpunit/4.2.6/bin的文件,如下所示。 CAVEAT:我不知道Homebrew將如何在PhpUnit更新中處理這個問題,但是現在它正在努力選擇PhpUnit用於測試的php版本。
#!/usr/bin/env bash
php=/Applications/MAMP/bin/php/php5.3.14/bin/php
#php=/Applications/MAMP/bin/php/php5.4.4/bin/php
/usr/bin/env $php -d allow_url_fopen=On -d detect_unicode=Off /usr/local/Cellar/phpunit/4.2.6/libexec/phpunit-4.2.6.phar $*
在Windows上,這可以使用與其他回復中提到的方法類似的方法來實現。
在/path/to/composer/phpunit
目錄中,在編輯器中打開phpunit
文件。 第一行應如下所示:
#!/usr/bin/env php
只需下載所需的PHP for Windows版本 ,將ZIP文件的內容放在您喜歡的位置,並引用完全量化的php.exe
文件路徑,而不僅僅是php
。 像這樣:
#!/usr/bin/env /c/misc/php-5.5.9-nts-Win32-VC11-x86/php.exe
在我的例子中,我把它放在/c/misc/php-5.5.9-nts-Win32-VC11-x86/
,它對應於C:\\misc\\php-5.5.9-nts-Win32-VC11-x86\\
使用Windows路徑語法。
請記住驗證是否正在使用正確的php.ini
文件( php --ini
或腳本文件php_ini_loaded_file()
)。
由於phar簽名錯誤修改phpunit文件對我不起作用,我通過顯式調用解釋器(在Linux上)運行phpunit與不同的php版本:
php7.1 /usr/local/bin/phpunit
php5.6 /usr/local/bin/phpunit
按照XAMPP的示例,可以提供php解釋器的完整路徑:
/Applications/XAMPP/xamppfiles/bin/php /usr/local/bin/phpunit
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.