«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как легко обмениваться данными и выполнять сценарии Python с PHP?

Как легко обмениваться данными и выполнять сценарии Python с PHP?

Опубликовано 8 ноября 2024 г.
Просматривать:413

How to Exchange Data and Execute Python Scripts Seamlessly from PHP?

Выполнение сценариев Python и обмен данными с помощью PHP

Можно выполнять сценарии Python внутри PHP и обмениваться данными между ними. Одним из способов сделать это является использование общеязыковых форматов и stdin/stdout для передачи данных.

Например, давайте рассмотрим сценарий, в котором у вас есть класс PHP для очистки данных веб-сайта. Чтобы расширить его возможности, вы хотите интегрировать скрипты Python, разработанные специально для различных веб-сайтов.

Чтобы облегчить передачу данных между двумя языками, вы можете использовать следующий подход:

PHP:

// Data to send to Python
$data = ['as', 'df', 'gh'];

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

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

// This will contain: array('status' => 'Yes!')
var_dump($resultData);

Python:

import sys, json

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

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

# Send to stdout (to PHP)
print(json.dumps(result))

В этом примере PHP отправляет данные JSON в качестве аргумента оболочки в скрипт Python. Скрипт считывает данные, обрабатывает их и отправляет результат обратно в формате JSON через стандартный вывод.

Этот метод обеспечивает безопасную и надежную передачу данных между PHP и Python. Обмен данными в структурированных форматах, таких как JSON, обеспечивает бесперебойную связь и исключает потенциальные проблемы при передаче данных.

Заявление о выпуске Эта статья перепечатана по адресу: 1729514477. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3