簡體   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