亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在帶有 XAMPP 的 MAC 上從 PHP 調用 Python 腳本

在帶有 XAMPP 的 MAC 上從 PHP 調用 Python 腳本

PHP
莫回無 2023-04-02 10:48:22
我想構建一個 RESTful API。我在 MAC 上工作,我安裝了 XAMPP 服務器。我有一個 Python 腳本,我想從 PHP 調用它。我的 PHP 文件如下所示:$output = shell_exec("python $pyfilepath $post->id $post->name");echo $output;這沒有問題。我的 python 代碼如下所示:import sys#import mysql.connectordef my_results(id,name):    print("My args are:",id,name)if __name__ == '__main__':    my_results(sys.argv[1],sys.argv[2])我可以讀取參數并將其傳遞給 python 腳本,但是如果我嘗試激活:import mysql.connector我沒有從 my_results 定義中得到任何結果。我的一切都建立在 python 上,我只需要調用我的腳本。知道有什么問題嗎?謝謝
查看完整描述

2 回答

?
慕哥6287543

TA貢獻1831條經驗 獲得超10個贊

請試試這個:


#!/usr/bin/env  php


ob_start();

passthru("python $pyfilepath $post->id $post->name");

$output = ob_get_clean(); 

或者試試這個


$output = shell_exec(escapeshellcmd("python $pyfilepath $post->id $post->name"));

echo $output;

嘗試一個簡單的腳本 test.py


#!/usr/bin/env  php

print("hello")

并這樣稱呼它


$output = shell_exec(escapeshellcmd("test.py"));

echo $output;


查看完整回答
反對 回復 2023-04-02
?
慕萊塢森

TA貢獻1810條經驗 獲得超4個贊

經過大量搜索,我更改了:

$output?=?shell_exec("python?$pyfilepath?$post->id?$post->name");

到:

$output?=?shell_exec("/anaconda3/bin/python3?$pyfilepath?$post->id?$post->name");

它奏效了。


查看完整回答
反對 回復 2023-04-02
  • 2 回答
  • 0 關注
  • 111 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號