2015-02-08 97 views
0

我在我的Laravel項目中使用Symfony提供的進程組件:http://symfony.com/doc/current/components/process.htmlLaravel Symfony進程組件未能啓動新進程

這裏是我的代碼:

$process = new Process('dir'); 
try 
{ 
    $process->mustRun(); 
    print $process->getOutput(); 
} catch (ProcessFailedException $e) { 
    print $e->getMessage(); 
} 

所以,沒有什麼花哨這裏,只是一個菜譜的解決方案。但是,我收到以下錯誤:

The command "dir" failed. 
Exit Code: 1(General error) 

Output: 
================ 



Error Output: 
================ 

我找不出什麼問題,因爲日誌中沒有任何內容。如果重要,我在Windows Server 2008 R2上運行它。

+0

你得到任何下面的語句有什麼不同:1)'$處理=新工藝( '目錄',NULL,NULL,NULL,60,[ 'suppress_errors'=>假]);' ? 2)'$ process = new Process('dir',null,null,null,60,['suppress_errors'=> false,'bypass_shell'=> false]);'? 3)'$ process = new Process('dir'); $流程 - > setEnhanceWindowsCompatibility(假);'? – patricus 2015-02-08 22:39:41

+0

@patricus沒有幫助。但是,最後一個(3)方法完全沒有返回輸出。 – none32 2015-02-09 20:33:18

回答

0

我有同樣的問題,像@ none32面臨。我嘗試了@patricus建議的解決方案,它對我很有幫助。

$process->setEnhanceWindowsCompatibility(false);