Récemment, j'ai décidé d'utiliser tp5 pour le développement d'interfaces APP et Python pour l'analyse de données dans un projet. Ensuite, j'ai été confronté à une question : comment PHP et Python interagissent-ils avec les données ?
Idée
La façon dont j'ai résolu ce problème était d'utiliser la fonction passthru de PHP pour appeler la commande permettant d'exécuter le script Python.
Implémentation
Appelez la commande en PHP pour exécuter le script Python
//php.php <?php $params = "value"; #传递给python脚本的入口参数 $path="python python.py "; //需要注意的是:末尾要加一个空格 passthru($path.$params);//等同于命令`python python.py 参数`,并接收打印出来的信息 ?>
S'il y a plusieurs paramètres, séparez-les par des espaces
Recevoir les paramètres transmis par PHP en Python
sys.argv[] est utilisé pour obtenir les paramètres d'entrée transmis par PHP à python
//python.py import sys params = sys.argv[1] #即为获取到的PHP传入python的入口参数 print(params);
Si dans Recevoir plusieurs paramètres en Python
params = sys.argv[1:]
Paramètres de retour de Python
Pour renvoyer plusieurs valeurs de Python, vous devez écrire les valeurs dans un tuple, puis Convertissez-le en json via json.dumps() et imprimez-le. Vous pouvez obtenir le json imprimé par le script Python via passthru en PHP
import sys import json params = ('Google', 'Runoob', 1997, 2000); json_str =json.dumps(params); print(json_str);
Vous devez également ajouter @ avant passthru en PHP, sinon l'invite suivante sera signalé
Notice: Array to string conversion in php.php on line 6
Effet
Exécutez le fichier PHP qui appelle le script Python, et la valeur de sortie dans le navigateur est la valeur imprimée par Python.
Pour plus de connaissances sur PHP, veuillez visiter le Site Web PHP chinois !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!