在我的問題的根源,我試圖從PHP腳本內調用Python腳本。我是一個共享的服務器上,與Python的多個版本安裝:從PHP中的系統函數調用特定的Python版本
/usr/bin/python -V ... 2.6
/home/tony/python/python -V ... 2.7
/home/tony/python/Python-3.2/python ... 3.2
echo $PATH ... /home2/tony/python/Python-3.2/
echo $PYTHONPATH... /home2/tony/python/lib/python3.2/site-packages
我也取得了Unix的一個別名:
alias python3='/home2/tony/python/Python-3.2/python'
下面是Python腳本(test.py)內容:
#!/usr/bin/python
import sys
print 'Python version:', sys.version_info
下面是PHP腳本(test.php的)內容:
<?php
$py_script = "test.py";
$py_args = "name1=value1++name2=value2";
system('python ' . $py_script . ' ' . $py_args, $retval);
// $retval will have a trailing 0 or 1 at the end
$retval = trim($retval, "0 1");
echo $retval;
?>
但是當我在瀏覽器中點擊test.php時,我仍然可以看到版本2.6。我不知道我必須改變我的腳本中的哪一部分來強制使用上面的Python 3.2(我需要2.6中無法處理的3.2中的功能/模塊)。任何幫助,將不勝感激!
無法你'system('/ home2/tony/python/Python-3.2/python')'?並檢查'/ usr/bin/python3 -V'。 – furas