PHP程序運行Python腳本(接收數據及傳參)[PHP Call Python] [有原始碼][延伸發想 PHP call opencv/CNN/ANN….]
PHP程序運行Python腳本(接收數據及傳參)[PHP Call Python] [有原始碼][延伸發想 PHP call opencv/CNN/ANN….]
資料來源: https://mp.weixin.qq.com/s/Dot_8Ej76VwS9Ft44C2nng
GITHUB: https://github.com/jash-git/PHP-Call-Python
文字重點摘要:
介紹一下,如何在php程序中運行Python腳本,在php中python程序的運行,主要依靠程序執行函數,這裡說一下三個相關函數:exec(),system() 和 passthru()。
這裡主要講 exec() 函數,介紹使用該函數傳遞參數,以及如何使用python返回josn數據供php使用。
Code
01
<?php
$re = exec('python ceshi.py', $out);
// $re = iconv('gbk', 'utf-8', $re);
var_dump($out);
echo '<br/>';
var_dump($re);
?>
def send():
data = '1,2,3,4,5'
print(data)
if __name__ == '__main__':
send()
Footer
© 2022 GitHub, Inc.
02
<?php
$canshu1 = '这是PHP传过来的参数';
$canshu2 = date('Y-m-d');
$re = exec("python ceshi.py $canshu1 $canshu2");
$re = iconv('gbk', 'utf-8', $re);
var_dump($re);
?>
import sys
def send():
# a1 = sys.argv[1]
# a2 = sys.argv[2]
re = sys.argv[1:]
data = '1,2,3,4,5,' + ','.join(re) # 转字符串
print(data)
if __name__ == '__main__':
send()
03
import sys
import json
def send():
dict = {'id':111, 'title':'测试title'}
dict['data'] = sys.argv[1:]
jsonArr = json.dumps(dict, ensure_ascii=False)//(涉及到中文字符的時候,需要指定ensure_ascii=False)
print(jsonArr)
if __name__ == '__main__':
send()
04
<?php
echo '这是运行直接输出:';
$re = system('python ceshi.py');
// $re = iconv('gbk', 'utf-8', $re);
echo '<br/>';
echo '这是赋值输出:';
var_dump($re);
?>
05
<?php
echo '这是运行直接输出:';
$re = passthru('python ceshi.py');
// $re = iconv('gbk', 'utf-8', $re);
echo '<br/>';
echo '这是赋值输出:';
var_dump($re);
?>
完整圖文教學:

2 thoughts on “PHP程序運行Python腳本(接收數據及傳參)[PHP Call Python] [有原始碼][延伸發想 PHP call opencv/CNN/ANN….]”
軟體 積木
小系統 疊加 組合 加成
軟體 系統 拼裝車(軟體積木)
先求有 再求好
EX: △△△ call python(command line /EXE)
火影忍者(鳴人)如何變強 VS 我[個人]要如何效法: https://bit.ly/3R7RCNf