Ralat baris arahan PHP: perkara yang anda mungkin tidak tahu

WBOY
Lepaskan: 2023-05-11 20:22:01
asal
1271 orang telah melayarinya

Artikel ini akan memperkenalkan beberapa perkara yang anda mungkin tidak tahu tentang ralat baris arahan PHP.

Sebagai bahasa sebelah pelayan yang popular, PHP biasanya berjalan pada pelayan Web, tetapi ia juga boleh dijalankan secara langsung pada baris arahan Contohnya, di bawah sistem Linux atau MacOS, kita boleh memasukkan "php" dalam perintah terminal ” untuk menjalankan skrip PHP secara langsung.

Walau bagaimanapun, sama seperti dalam pelayan web, apabila kami menjalankan skrip PHP dalam baris arahan, kami juga akan menghadapi beberapa ralat. Berikut ialah beberapa maklumat tentang ralat baris arahan PHP yang mungkin anda tidak tahu:

  1. Mesej ralat tidak dipaparkan secara automatik

Apabila kami melaksanakan skrip PHP daripada baris arahan Apabila terdapat ralat dalam skrip, mesej ralat tidak dipaparkan secara automatik pada skrin seperti dalam pelayan web. Ini kerana dalam persekitaran PHP pada baris arahan, secara lalai, PHP akan mengeluarkan maklumat ralat kepada aliran keluaran standard (STDOUT) dan bukannya aliran keluaran ralat (STDERR).

Oleh itu, jika anda ingin melihat maklumat ralat PHP pada baris arahan, anda perlu mengeluarkan maklumat ralat kepada aliran ralat standard Ini boleh dicapai dengan menambahkan kod berikut pada skrip PHP:

ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL);
Salin selepas log masuk

Kod ini memberitahu PHP untuk mengeluarkan maklumat ralat kepada aliran output ralat dan memaparkan semua maklumat ralat, termasuk amaran dan pemberitahuan. Kod ini hendaklah diletakkan pada permulaan skrip PHP.

  1. Atur cara masih akan terus dilaksanakan

Jika anda tidak mengendalikan ralat dalam skrip baris arahan PHP, atur cara masih akan terus dilaksanakan apabila ralat berlaku. Ini kerana pengendalian ralat dalam skrip baris arahan PHP adalah berbeza daripada dalam pelayan web. Jika anda ingin mengendalikan ralat pada baris arahan, anda boleh menggunakan pernyataan cuba-tangkap atau fungsi pengendalian ralat tersuai.

Contohnya:

set_error_handler(function ($errno, $errstr, $errfile, $errline ) { echo "Error: [$errno] $errstr - $errfile:$errline"; die(); });
Salin selepas log masuk

Kod ini menggunakan fungsi pengendalian ralat tersuai untuk mengendalikan mesej ralat dan menamatkan pelaksanaan program selepas pengendalian ralat selesai. Fungsi ini perlu ditambah pada permulaan skrip PHP.

  1. Maklumat ralat baris arahan PHP boleh dieksport ke fail

Jika anda ingin menyimpan maklumat ralat baris arahan PHP ke fail, anda boleh menggunakan operasi pengalihan aksara ">" dan ">>". Contohnya:

php script.php > output.log 2>&1
Salin selepas log masuk

Arahan ini akan mengubah hala semua dalam aliran keluaran standard dan aliran keluaran ralat ke fail bernama output.log. Jika anda tidak mahu menulis ganti kandungan fail asal, anda boleh menggunakan operator ">>".

  1. Mesej ralat sebenarnya boleh membantu anda nyahpepijat program anda

Mesej ralat dalam baris arahan PHP mungkin kelihatan mengelirukan, tetapi ia sebenarnya boleh membantu anda nyahpepijat atur cara anda.

Pertama sekali, mesej ralat akan memberitahu anda di mana masalah berlaku dalam atur cara, jenis ralat, fail dan nombor baris serta sebab ralat. Maklumat ini membolehkan anda mengenal pasti masalah dengan cepat.

Kedua, mesej ralat juga boleh memberitahu anda aliran pelaksanaan program Ia boleh memaparkan susunan panggilan fungsi dan pemindahan parameter antara fungsi melalui timbunan ralat, yang sangat membantu untuk memahami aliran pelaksanaan. daripada program tersebut.

Kesimpulan:

Apabila melaksanakan skrip PHP dari baris arahan, anda perlu memberi perhatian kepada cara mengendalikan mesej ralat PHP. Anda boleh mengendalikan ralat PHP dengan mudah daripada baris arahan dengan mengeluarkan maklumat ralat kepada aliran ralat standard, menyesuaikan fungsi pengendalian ralat atau menggunakan pernyataan cuba-tangkap. Di samping itu, anda boleh menggunakan operator ubah hala untuk mengeksport maklumat ralat ke fail untuk melihat dan menyahpepijat dengan mudah.

Atas ialah kandungan terperinci Ralat baris arahan PHP: perkara yang anda mungkin tidak tahu. 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
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!