php调用shell_exec()无输出

博客讲述了在PHP中使用shell_exec调用Python脚本时遇到的问题,具体表现为某个.py文件无法正常运行并返回空输出。作者通过添加错误输出重定向发现了问题在于Python无法确定家目录,导入os模块并设置环境变量HOME为Miniconda3的路径后解决了问题。

window装Miniconda

 php 调用python结果

$out = shell_exec("python *.py");

print($out);

out为空无输出,但其他另一个py文件可正常运行有输出。

php页面也无错误提示,在页面前加erro_reporting(E_ALL),也无反应。

 检查py文件并与前述python代码比较,发现可能是路径问题。

在脚本后加入 2>&1 (把错误信息重定向到输出)

$out = shell_exec("python *.py 2>&1");

输出Python RuntimeError: can't determine home directory

import os

os.environ['HOME'] = 'd:\Miniconda3'

 问题解决!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值