&1', $output, $return_val) ;" ."/> &1', $output, $return_val) ;" .">
Rumah > Artikel > pembangunan bahagian belakang > Apakah yang perlu saya lakukan jika php exec tidak boleh mendapatkan nilai?
Penyelesaian kepada masalah yang php exec tidak dapat memperoleh nilai: 1. Buka fail kod PHP yang sepadan 2. Ubah suai kod kepada "exec('convert a.jpg b.jpg 2>&1', $ output, $ return_val);" Itu sahaja.
Persekitaran pengendalian artikel ini: sistem Windows 7, PHP versi 7.4, komputer Dell G3.
Apakah yang perlu saya lakukan jika php exec tidak dapat nilainya?
Kaedah penyelesaian masalah untuk fungsi exec() PHP tidak mengembalikan nilai:
Exec diperlukan untuk menjamin imagemagic dan pemasangan gagal pada banyak pelayan
exec() pelaksanaan Perintah luaran gagal tanpa sebarang mesej ralat.
Tiada masalah apabila exec melaksanakan arahan tertentu pada baris arahan, tetapi ralat berlaku dalam PHP. Masalah ini adalah 99.99% berkaitan dengan kebenaran, tetapi arahan yang dilaksanakan oleh exec tidak akan mengembalikan ralat. Satu helah ialah menggunakan arahan talian paip. Katakan panggilan exec anda adalah seperti berikut:
exec('convert a.jpg b.jpg', $output, $return_val);
boleh ditukar seperti berikut:
exec('convert a.jpg b.jpg 2>&1', $output, $return_val); print_r($output);
Gunakan 2>&1, arahan akan dikeluarkan ralat semasa pelaksanaan shell Pergi ke pembolehubah $output dan keluarkan pembolehubah untuk dianalisis.
Nota: exec mempunyai 3 parameter yang pertama ialah arahan yang akan dilaksanakan. , status pelaksanaan parameter ketiga, 0 menunjukkan kejayaan, yang lain menunjukkan kegagalan.
Terdapat tiga fungsi dalam php yang boleh digunakan untuk melaksanakan sistem arahan luaran, exec dan passthru.
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika php exec tidak boleh mendapatkan nilai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!