2010-07-23 57 views
10

我的系統有兩個PHP解釋器。一個與OS捆綁在一起,另一個通過XAMPP軟件包安裝。我所有的PHP擴展都適用於XAMPP安裝,但PHPUnit似乎只運行我的機器附帶的PHP版本。PHP:如何調整PHPUnit以使用不同的PHP解釋器?

有沒有人知道我可以配置或重建PHPUnit的方式,以便它獨佔地使用我的XAMPP PHP解釋器?

回答

7

找到您安裝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可執行是

8

對於Mac/Linux的,的第一行PHPUnit的腳本開始與

#!/usr/bin/php 

變化,要

#!/Applications/XAMPP/xamppfiles/bin/php 

或任何其他的PHP解釋你想使用。

+0

如果你不確定你的其他PHP運行在哪裏,只需從終端嘗試'php -i'並尋找'$ _SERVER ['_']'。 – 2017-07-06 16:22:12

1

與托馬斯的說法的同意,另外還有下文進一步

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有很多來回切換最近:)

0

這適用於使用Mac OS 10.9家釀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 $* 
0

在Windows上,可以使用與其他答覆中提到的類似的方法來實現。

在您的/path/to/composer/phpunit目錄中,在編輯器中打開phpunit文件。第一行應該是這樣的:

#!/usr/bin/env php 

簡單download your desired version of 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/,使用Windows路徑語法相當於C:\misc\php-5.5.9-nts-Win32-VC11-x86\

請記住驗證是否正在使用正確的php.ini文件(php --ini或腳本文件php_ini_loaded_file())。