<?php
header("Content-Type: text/html; charset=gbk");
//方法一 保存在$output
//(1)
/*
$output=exec('C:/Users/Administrator/AppData/Local/Programs/Python/Python37/python.exe index.py');
$array=explode(',', $output);
foreach ($array as $value) {
echo $value."</br>";
}
print_r($output);
*/
// index.py 全内容
/*
print('12347')
*/
//(2)
//exec($String , $Array , $ret)函数有三个参数,$String 表示执行的语句,这里不能直接像Linux系统下一样直接写"python xx.py"而是需要
//找到python的exe文件的路径 hah.py后面跟了两个参数$var和$var1 表示传给python文件的参数,$Array是json格式的返回集,$ret等于0表示
//执行成功,等于1表示执行失败。另外!!如果python程序有错误的话,php这边是不会报错的。
/*
$var = 6;
$var1 = 12;
$l = exec("C:/Users/Administrator/AppData/Local/Programs/Python/Python37/python.exe test.py $var $var1",$Array,$ret);
print_r($Array);
*/
// test.py全部内容
/*
import sys
#需要用sys库来接受php传过来的两个参数$var和$var1
filename = sys.argv[0]#文件名
v1 = sys.argv[1]#php传过来的变量
v2 = sys.argv[2]
r = {filename:"asd" , v1:"asd",v2:"asd"}
print (r)#这里的输出到php的变量$Array里面去了
*/
//方法二 直接打印 $ret表示连接状态 $cmd表示结果但直接打印 1表示未连接0表示已连接
//$cmd = system('C:/Users/Administrator/AppData/Local/Programs/Python/Python37/python.exe index.py',$ret);
//print_r($ret);
//方法三 直接打印 $ret表示连接状态 $cmd表示结果但直接打印 1表示未连接0表示已连接
// $cmd =passthru('C:/Users/Administrator/AppData/Local/Programs/Python/Python37/python.exe index.py',$ret);
// print_r($ret);
?>