Rumah > pembangunan bahagian belakang > masalah PHP > Apa yang perlu dilakukan jika keputusan php exec bercelaru

Apa yang perlu dilakukan jika keputusan php exec bercelaru

藏色散人
Lepaskan: 2023-03-17 08:00:02
asal
1392 orang telah melayarinya

Penyelesaian kepada hasil php exec yang bercelaru: 1. Buka fail kod PHP yang sepadan 2. Semak kod di exec 3. Ubah suai kandungan kepada "exec("python cmd.py",$str); foreach($str sebagai $res){$str = iconv("GBK", "UTF-8", $res);}echo $str;".

Apa yang perlu dilakukan jika keputusan php exec bercelaru

Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer Dell G3.

Apakah yang perlu saya lakukan jika keputusan php exec bercelaru?

php exec atau shell_exec tidak boleh mengembalikan aksara Cina yang kacau-bilau

Pada asalnya saya ingin melaksanakan:

exec("python cmd.py",$str);
var_dump($str);
Salin selepas log masuk

Output fail cmd.py mengandungi bahasa Cina, hasilnya Apa yang dipaparkan adalah seperti gambar di bawah:

Apa yang perlu dilakukan jika keputusan php exec bercelaru

Selepas mencari di Baidu dan csdn, ramai blogger mengatakan bahawa ia boleh diselesaikan dengan menetapkan pengekodan yang telah ditetapkan, seperti menambah pengekodan sebelum melaksanakan arahan:

$locale='en_US.UTF-8';
setlocale(LC_ALL,$locale);
putenv('LC_ALL='.$locale);
exec("python cmd.py",$str);
var_dump($str);
Salin selepas log masuk

Selepas mencubanya, saya dapati masalah itu masih wujud dan tiada kesan. . Setelah sekian lama mencari di Google, akhirnya saya temui jalan penyelesaian, jadi saya tidak berani meninggalkannya, jadi saya menyiarkannya untuk dikongsi. . Bukan omong kosong, terus ke sana. . .

eksekusi:

exec("python cmd.py",$str);
foreach($str as $res)
{
    $str = iconv("GBK", "UTF-8", $res);
}
echo $str;
Salin selepas log masuk

shell_exec:

$res = shell_exec("python cmd.py");
echo iconv("GBK", "UTF-8", $res);
Salin selepas log masuk

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Apa yang perlu dilakukan jika keputusan php exec bercelaru. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan