繁体   English   中英

两个脚本之间的通讯

[英]Communication between two scripts

我正在使用无限Python脚本(启动时启动)和PHP网页创建嵌入式系统。 PHP网页必须与该脚本进行通信。

当前的解决方案是基于文件的通信。 PHP将一些命令写入文件,而Python将对其他(或相同)文件的响应写入文件。

另一种可能的解决方案是仅在需要时使用PHP $response = shell_exec('./script.py');来调用某些NOT无限Python脚本$response = shell_exec('./script.py');

两种解决方案都是可行的,但它们都很复杂,我需要Python脚本是无限的。

有什么方法可以在同一Linux设备上的两个独立Scipt之间打开一些通信隧道吗?

如两个设备之间的UART,telnet等。

现在我正在寻找PHP-PYTHON和PYTHON-PYTHON通信的解决方案,但有时我需要使用Bash,TCL等进行通信。

谢谢(对不起,英语不好)

拉迪姆

在不了解您要实现的目标的情况下,我会寻求基本的http解决方案,使用python启动一个简单的http服务器

import SimpleHTTPServer
import SocketServer

PORT = 8000

Handler = SimpleHTTPServer.SimpleHTTPRequestHandler

httpd = SocketServer.TCPServer(("", PORT), Handler)

print "serving at port", PORT
httpd.serve_forever()

.... do something with the http request and send the response

然后,PHP脚本可以简单地直接向python发出一些GET / POST / ..请求,并获取http响应,例如通过cURL:

// create curl resource
$ch = curl_init();

// set url
curl_setopt($ch, CURLOPT_URL, "localhost");

// set port
curl_setopt($ch, CURLOPT_PORT, 8000);

//return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

// $output contains the output string
$output = curl_exec($ch);

// close curl resource to free up system resources
curl_close($ch);

当然,这是一个简单的存根,应该对其进行一些调整,但它应该为您提供一个起点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM