当前位置: 首页 > 面试题库 >

在PHP中调用Python

糜帅
2023-03-14
问题内容

我有一个最近写的Python脚本,我使用命令行中的某些选项进行了调用。我现在想要一个非常薄的Web界面在Mac上本地调用此脚本。

我不想在Mac上安装mod_python或mod_wsgi时遇到麻烦,所以我只想从PHP执行system()或popen()来调用Python脚本。

还有更好的主意吗?提前致谢!


问题答案:

根据您在做什么,system()或popen()可能是完美的。如果Python脚本没有输出,或者您希望Python脚本的输出直接进入浏览器,请使用system()。如果要向Python脚本的标准输入中写入数据,或者从php中的Python脚本的标准输出中读取数据,请使用popen()。popen()仅允许您读取或写入,而不能两者都读取。如果两者都需要,请签出proc_open(),但是在程序之间进行双向通信时,您需要小心避免死锁,因为每个程序都在等待对方执行某项操作。

如果要将用户提供的数据传递给Python脚本,那么要注意的主要事情是命令注入。如果您不小心,您的用户可以向您发送诸如“;
evilcommand;”之类的数据。并让您的程序违背您的意愿执行任意命令。

escapeshellarg()和escapeshellcmd()可以帮助解决这个问题,但是我个人喜欢使用类似以下的方法删除所有不是好的字符

preg_replace('/[^a-zA-Z0-9]/', '', $str)


 类似资料:
  • 问题内容: 我们的客户给了我一个REST API,我需要对其进行PHP调用。但是,事实上,API提供的文档非常有限,因此我真的不知道如何调用该服务。 我已经尝试过使用Google,但是唯一出现的是已经过期的Yahoo!。有关如何调用服务的教程。没有提及标题或任何深度信息。 是否有关于如何调用REST API的任何体面的信息,或有关它的一些文档?因为即使在W3schools上,它们也仅描述SOAP方

  • 问题内容: 我想知道是否有可能仅在条件为真时在javascript中调用php函数。例如 有没有这样做的方法。如果是这样,请告诉我。谢谢 问题答案: 不能以上面说明的方式调用PHP函数。但是,您可以使用AJAX调用PHP脚本,代码如下所示。您也可以在这里找到一个简单的示例。让我知道您是否需要进一步澄清 使用jQuery 准系统Javascript替代

  • 我一直在学习一些关于如何创建会话对象的课程,效果很好,如果我把完整的代码放到一个PHP文件中,一切都很好! 我想做的是将其放在另一个模块(PHP文件)中,只需使用一行(或等效行)即可,例如

  • 问题内容: reset.php文件: 脚本Ajax: 嗨,我尝试在ajax中调用php reset函数,但是当我进行谷歌搜索时,我知道没有直接调用php函数的可能性,因此我将该特定函数放在单独的php文件中并调用该php文件,我不确定我该怎么做阿贾克斯我尝试了上面的代码,但没有任何反应。出现设置重设消息。我该怎么做任何帮助都将非常有用。在使用ajax概念之前,我尝试过使用php中的函数,但是每次只

  • 我使用postman测试了一个API。使用postman,我设法生成了一个令牌。 从postman那里,我通过一个get请求,使用以下内容和以下详细信息获取了用户的所有数据: 在授权类型下,我选择了“无记名令牌”并将令牌粘贴在其各自的字段中。 当我单击发送时,我得到了一个用户数据的成功响应。 在PHP中,如何在PHP函数中执行相同的api调用(使用id、电子邮件和令牌)? 我试过这个: 但当我查看

  • 可能重复: 参考:为什么我的Javascript中的PHP代码不起作用? 我已经研究了好几天了,似乎找不到任何东西可以让我做我需要做的事情。 我试图做的是从Javascript调用另一个文件中的Php函数。我的联系人表单上有一个验证码,还有一个Javascript文件,用于检查表单并在用户遗漏任何内容时提醒用户。我的问题是我不能检查验证码。 这是我调用Javascript和Php的链接 这是我的J