Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapa Kod PHP Saya Tidak Melaksanakan Skrip Python dan Bagaimana Saya Boleh Membetulkannya Menggunakan shell_exec?

Mengapa Kod PHP Saya Tidak Melaksanakan Skrip Python dan Bagaimana Saya Boleh Membetulkannya Menggunakan shell_exec?

Mary-Kate Olsen
Lepaskan: 2024-12-08 09:43:14
asal
837 orang telah melayarinya

Why Doesn't My PHP Code Execute Python Scripts and How Can I Fix It Using shell_exec?

Melaksanakan Skrip Python daripada PHP

Apabila cuba melaksanakan skrip Python daripada PHP menggunakan arahan seperti exec, PHP mungkin tidak menghasilkan sebarang output walaupun tetapan pelaporan dan paparan ralat yang betul. Ini boleh diselesaikan dengan menggunakan fungsi shell_exec.

Fungsi shell_exec

shell_exec melaksanakan perintah melalui shell dan mengembalikan output lengkapnya sebagai rentetan. Berikut ialah contoh penggunaannya:

$command = escapeshellcmd('/usr/custom/test.py');
$output = shell_exec($command);
echo $output;
Salin selepas log masuk

Konfigurasi Skrip Python

Pastikan skrip Python anda mempunyai konfigurasi berikut:

  • Barisan pertama skrip mengandungi #! diikuti dengan laluan penterjemah Python, cth., #!/usr/bin/env python.
  • Skrip mempunyai keistimewaan yang betul untuk pengguna web (cth., www-data untuk Apache) untuk melaksanakannya.

Pertimbangan Khusus Unix

Pada platform Unix, Python skrip mungkin perlu dibuat boleh laku menggunakan chmod x myscript.py. Selain itu, arahan dalam skrip Python harus mempunyai keistimewaan yang sesuai.

Kebenaran Pengguna Web

Ingat bahawa PHP berjalan sebagai pengguna web, biasanya www-data atau apache. Oleh itu, pastikan pengguna web mempunyai kebenaran akses kepada fail dan direktori yang dirujuk dalam perintah shell_exec.

Atas ialah kandungan terperinci Mengapa Kod PHP Saya Tidak Melaksanakan Skrip Python dan Bagaimana Saya Boleh Membetulkannya Menggunakan shell_exec?. 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