2016-03-31 63 views
0

我的php代码位于htdocs/series/index.php。 我的python代码位置是/home/shivam/Desktop/hello.py 我在ubuntu中使用xampp运行php。 这里是PHP代码从php运行python脚本并写入文件

<?php 
$command = escapeshellcmd('/home/shivam/Desktop/hello.py'); 
$output = shell_exec($command); 
echo $output; 
?> 

这里是我的Python代码

#!/usr/bin/env python 
with open("/home/shivam/Desktop/solution.txt", "w") as myfile: 
    myfile.write("write text") 

我试图运行使用PHP编写一个文件 'solution.txt' 的python脚本。当我自己写一些东西到solution.txt并使用python脚本通过php以读取模式打开它时,它可以工作,但是当我尝试使用上面的代码编写代码时,我无法这样做。 还有一件事,没有任何一行下面的代码被打开(“/ home/shivam/Desktop/solution.txt”,“w”)作为myfile:“被执行。 我曾试图给出的解决方案:enter link description here

+0

您是否也按照链接建议更改了权限? – jDo

+0

我做了chmod + x hello.py – shivam12393

+0

你原来的代码有有效的php标签,对吧?它说'?php',而不是'<?php'。 – jDo

回答

0

绝对路径的可执行文件和文件...

run_py.php

<?php 
$command = escapeshellcmd('/usr/bin/python /home/user/some_py.py'); 
$output = shell_exec($command); 
echo $output; 
?> 

some_py.py

with open("/home/user/solution.txt", "w") as myfile: 
    myfile.write("write text") 

输出:

[email protected]:~/$ php run_py.php 
[email protected]:~/$ cat solution.txt 
write text 
+0

我知道这段代码正在工作。但我必须在浏览器上运行它。 – shivam12393

+0

@ shivam12393 *“我知道这段代码正在工作。”*您是否真的尝试过运行它?启用PHP错误报告并检查是否允许您的PHP /服务器用户(www-data?)写入文件。 PHP可能不被允许打开一个shell。 – jDo

+0

没有错误显示 – shivam12393