Comment échanger des données entre des scripts Python exécutés et PHP

Linda Hamilton
Libérer: 2024-10-21 20:47:02
original
771 Les gens l'ont consulté

How to Exchange Data Between Executed Python Scripts and PHP

Exécuter des scripts Python en PHP et échanger des données

PHP et Python sont deux langages de programmation polyvalents dotés de capacités distinctes. Parfois, les développeurs peuvent être confrontés à la nécessité d'intégrer des scripts Python dans des applications PHP pour exploiter des fonctionnalités spécialisées. Un aspect crucial de cette intégration est la capacité d'échanger des données de manière transparente entre les deux langages.

Mécanismes d'échange de données

Heureusement, l'échange de données entre PHP et Python est réalisable via formats et canaux de communication standardisés, à savoir :

  • Format commun : JSON (JavaScript Object Notation) est un format d'échange de données largement pris en charge qui peut être facilement analysé par PHP et Python.
  • Canaux de communication : Les flux d'entrée/sortie (stdin et stdout) fournissent un moyen fiable de transfert de données entre les processus.

Exemple de mise en œuvre

Voici un exemple de la façon d'exécuter un script Python à partir de PHP et d'échanger des données en utilisant JSON :

PHP :

<code class="php"><?php
// Data to pass to Python (in JSON format)
$data = json_encode(['as', 'df', 'gh']);

// Execute Python script with JSON data as an argument
$result = shell_exec('python /path/to/myScript.py ' . escapeshellarg($data));

// Decode the result from Python
$resultData = json_decode($result, true);

// Output the result
var_dump($resultData); // Array with key 'status' set to 'Yes!'
?></code>
Copier après la connexion

Python :

<code class="python">import sys
import json

# Parse JSON data received from PHP
try:
    data = json.loads(sys.argv[1])
except:
    print("ERROR")
    sys.exit(1)

# Generate data to send back to PHP
result = {'status': 'Yes!'}

# Send result via stdout (sent to PHP)
print(json.dumps(result))</code>
Copier après la connexion

Fiabilité et difficulté

L'approche décrite ci-dessus est généralement fiable pour l'échange de données entre PHP et Python. Le niveau de difficulté de mise en œuvre dépend de la complexité des données et des exigences spécifiques du projet. Cependant, il offre un moyen flexible et efficace d'intégrer ces deux langages pour des tâches spécialisées.

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!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!