2012-03-31 86 views
1

我目前正在用PHP和python搞砸。我做了一個簡單的Python腳本這實際上只是 - print "Hello World"php只返回數組中的變量到網頁

我的PHP腳本(這是在我的主要的index.php頁)如下:

<?php 
$output = null; 
exec('C:\\Python27\\python.exe py\\test.py', $output, $return); 
print_r($output); 
?> 

我的問題是,它返回:

陣列([0] =>的Hello World)

有誰知道如何只返回Hello World到我的網頁? 任何幫助將不勝感激。

+2

讀http://php.net/manual/en/function.exec.php – 2012-03-31 21:24:22

+2

中繼()可能http://www.php.net/manual/en/function.passthru.php – 2012-03-31 21:24:36

+0

Yeesh我覺得自己是個笨蛋......謝謝你們兩個。 – Meh 2012-03-31 21:26:51

回答

0

最簡單的方法是用echo $ output [0]替換print_r($ output)。

但是,由於exec-Statement每行都返回一個數組,所以它只能用python腳本中的單行返回值。如果你真的想要整個輸出,你必須遍歷數組。

+2

這不會使exec函數不返回數組。所以這不是一個解決方案,更多的是照顧症狀。 – 2012-03-31 21:27:31

+0

同意@Truth,但好的嘗試= P – 2012-03-31 21:30:14

+0

關於你的編輯,這是不正確的請RTFM。 – 2012-03-31 21:31:46

0

當指定輸出變量時,它會用每行輸出的數組填充它。

取而代之,將exec函數的實際結果保存到一個變量中,然後回顯。

1
if (is_array($output)){ 
    foreach($output as $v) echo $v . "<br>";} 
else echo $output