2016-08-02 112 views
5

我想知道如何使用php代碼運行python腳本。我試過不同的選項,如如何在PHP/Laravel中運行Python腳本

$output = exec("python /var/GAAutomationScript.py"); 

$command = escapeshellcmd('/var/GAAutomationScript.py'); 
$output = shell_exec($command); 

但無法運行python腳本。我的申請是在Laravel。是否可以使用Laravel調度程序作業運行python腳本,例如使用手工命令?

+0

python腳本是否可以通過運行Web服務器的帳戶執行? – aynber

回答

8

在PHP:

<?php 

$command = escapeshellcmd('/usr/custom/test.py'); 
$output = shell_exec($command); 
echo $output; 

?> 

在Python文件 'test.py' 驗證這個文本中第一行:(see shebang explain):

#!/usr/bin/env python 

另外的Python文件應該have correct privileges(執行用於用戶的WWW -data/apache如果PHP腳本在瀏覽器或curl中運行)和/或必須是「可執行的」。 .py文件中的所有命令也必須具有正確的權限。

chmod +x myscript.py 
+0

Symfony Process組件(http://symfony.com/doc/current/components/process.html)可能用於簡化郵件的換行。 – Napas