Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Menjalankan Skrip Python daripada PHP?

Bagaimanakah Saya Boleh Menjalankan Skrip Python daripada PHP?

Susan Sarandon
Lepaskan: 2024-12-24 04:00:09
asal
397 orang telah melayarinya

How Can I Successfully Run a Python Script from PHP?

Menjalankan Skrip Python daripada PHP

PHP menyediakan beberapa fungsi untuk melaksanakan perintah luaran, termasuk exec, shell_exec dan sistem. Walau bagaimanapun, anda mungkin menghadapi masalah apabila cuba menjalankan skrip Python menggunakan fungsi ini.

Penyelesaian masalah:

Untuk menyelesaikan masalah ini, anda telah mencuba pelbagai penyelesaian, termasuk:

  • Menggunakan penterjemah Python yang berbeza
  • Menggunakan kedua-dua mutlak dan relatif laluan
  • Menguji dengan arahan lain (cth., gema)

Walau bagaimanapun, anda perasan bahawa PHP masih tidak menghasilkan output.

Penyelesaian:

Isunya mungkin bukan terletak pada PHP tetapi dengan kebenaran. Pelayan web biasanya berjalan dengan keistimewaan pengguna yang terhad, yang boleh menyekat keupayaan mereka untuk melaksanakan arahan tertentu atau mengakses fail.

  1. Log masuk sebagai Pengguna Pelayan Web:

Log masuk ke pelayan anda sebagai pengguna yang sedang dijalankan oleh pelayan web anda (mis., www-data).

  1. Uji Perintah:

Menggunakan arahan yang anda cuba jalankan dalam PHP, cuba laksanakan secara manual daripada terminal sebagai pengguna pelayan web. Contohnya:

/usr/bin/python2.7 /srv/http/assets/py/switch.py arg1 arg2
Salin selepas log masuk

Jika arahan berfungsi secara manual, ia mengesahkan bahawa isu itu terletak pada kebenaran.

  1. Semak Kebenaran:

Pastikan skrip PHP dan skrip Python mempunyai kebenaran yang betul. PHP sepatutnya melaksanakan kebenaran untuk skrip PHP dan skrip Python sepatutnya mempunyai melaksanakan kebenaran untuk pengguna pelayan web.

  1. Gunakan shell_exec:

Fungsi shell_exec PHP secara amnya lebih dipercayai untuk melaksanakan arahan luaran daripada exec atau sistem. Ia mengembalikan output lengkap daripada arahan yang dilaksanakan. Gunakan kod berikut:

$command = escapeshellcmd('/usr/custom/test.py');
$output = shell_exec($command);
echo $output;
Salin selepas log masuk
  1. Pastikan Garis Shebang Fail Python:

Sahkan bahawa baris pertama fail Python anda termasuk yang berikut baris shebang:

#!/usr/bin/env python
Salin selepas log masuk

Baris ini menentukan penterjemah Python kepada gunakan.

  1. Jadikan Fail Python Boleh Laksana:

Jika perlu, jadikan fail Python anda boleh laku pada platform jenis UNIX menggunakan:

chmod +x myscript.py
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjalankan Skrip Python daripada PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan