python 导入文件时 php exec 失败

标签 php python exec

我在 php 中有这段代码:

$var = "something";
$result = exec("python /somePath/someFile.py $var");
print $result;

我的 someFile.py 是这样的:

import functions as f

x = f.removeSpace("hey   there")
print x 

现在,如果没有导入功能,一切都正常,但是当我尝试导入另一个模块时,php 就螺丝钉了。我已将 sys.stderr = sys.stdout 包含在我的 python 文件中,当我运行我的 php 代码时,它会返回:

AttributeError: 'module' object has no attribute 'removeSpace'

有什么建议吗?

最佳答案

我最近遇到了这样的问题。事实证明,PHP 的 exec 没有将环境变量传递给它执行的程序,因此 Python 没有看到 $PYTHONPATH,并且不知道在哪里导入模块来自。

我不知道如何从 PHP 中解决这个问题,但在我们的例子中,将导入的包符号链接(symbolic link)到与脚本相同的目录使其工作。

关于python 导入文件时 php exec 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7043549/

相关文章:

php - 24小时内阻止同一IP执行某项操作

php - Mysql 不允许在调用时显示表

python - 在 python 脚本中使用 slurm 创建作业,迭代列表中的项目

使用exec函数的php后台进程

php - 如何传递数据以在 Laravel 中查看?

php - 如何显示 youtube 视频缩略图

python - 将 Python 与 WAMP 结合使用

python - 我可以在 Python 中的空列表上使用 insert() 吗?

java - 在 Java Swing GUI 中运行 .bat 不起作用

java字节数组输出流什么都不给