Rumah > pembangunan bahagian belakang > tutorial php > Apakah tujuan isset () dan kosong () dalam php?

Apakah tujuan isset () dan kosong () dalam php?

Karen Carpenter
Lepaskan: 2025-03-19 11:44:27
asal
1009 orang telah melayarinya

Apakah tujuan isset () dan kosong () dalam php?

Fungsi isset() dan empty() dalam PHP berfungsi dengan tujuan yang berbeza yang berkaitan dengan pengendalian dan penilaian yang berubah -ubah.

  • Isset () : Fungsi isset() digunakan untuk menentukan sama ada pembolehubah ditetapkan dan tidak NULL. Ia kembali true jika pembolehubah wujud dan mempunyai nilai selain daripada NULL , jika tidak, ia mengembalikan false . Fungsi ini amat berguna untuk memeriksa jika pembolehubah telah diasaskan sebelum cuba menggunakannya, yang dapat membantu mencegah notis mengenai pembolehubah yang tidak ditentukan.
  • kosong () : Pemeriksaan fungsi empty() jika pemboleh ubah kosong. Pembolehubah dianggap kosong jika tidak wujud, atau jika nilainya bersamaan dengan FALSE . Ini termasuk "" (rentetan kosong), 0 (integer atau float), 0.0 , "0" , NULL , FALSE , array() , atau pembolehubah yang diisytiharkan tanpa nilai dalam kelas. Fungsi empty() berguna untuk mengesahkan input pengguna atau memeriksa jika pembolehubah mempunyai nilai yang boleh dianggap tidak kosong.

Apakah perbezaan utama antara isset () dan kosong () dalam php?

Perbezaan utama antara isset() dan empty() dalam PHP berpusat pada apa yang mereka menilai dan bagaimana mereka merawat pelbagai jenis nilai:

  • Penilaian kewujudan : isset() memeriksa kewujudan pembolehubah dan sama ada ia adalah NULL , sedangkan empty() melangkah lebih jauh untuk menilai "kebenaran" nilai pembolehubah.
  • Rawatan Nilai :

    • isset() akan kembali true untuk sebarang pembolehubah yang wujud dan tidak NULL , walaupun ia adalah rentetan kosong, 0 , atau array kosong.
    • empty() akan kembali true untuk nilai -nilai ini ( "" , 0 , NULL , FALSE , dan lain -lain) kerana mereka dianggap "kosong" atau bersamaan dengan FALSE .
  • Pulangan nilai untuk kes tertentu :

    • isset($var) akan kembali false jika $var tidak ditetapkan atau NULL .
    • empty($var) akan kembali true jika $var tidak ditetapkan, NULL , atau nilai "kosong"; Jika tidak, ia mengembalikan false .

Bagaimanakah saya dapat menggunakan isset () dan kosong () dengan berkesan untuk memeriksa keadaan berubah?

Berkesan menggunakan isset() dan empty() dalam PHP melibatkan pemahaman peranan khusus mereka dalam menilai keadaan berubah:

  • Menggunakan isset() :

    • Gunakan isset() untuk memeriksa sama ada pembolehubah telah ditetapkan sebelum anda cuba menggunakannya. Ini amat berguna apabila bekerja dengan borang dan input pengguna untuk memastikan data yang diharapkan hadir.

       <code class="php">if (isset($_POST['username'])) { // Safe to use $_POST['username'] }</code>
      Salin selepas log masuk
    • Campurkan isset() dengan syarat -syarat lain untuk mengakses elemen array bersarang dengan selamat.

       <code class="php">if (isset($array['key1']['key2'])) { // Access $array['key1']['key2'] }</code>
      Salin selepas log masuk
  • Menggunakan empty() :

    • Gunakan empty() untuk memeriksa sama ada pemboleh ubah adalah "kosong" atau FALSE , yang dapat memudahkan pemeriksaan bersyarat.

       <code class="php">if (empty($var)) { // $var is considered empty }</code>
      Salin selepas log masuk
    • empty() amat berguna untuk mengesahkan input pengguna atau memeriksa parameter pilihan.

       <code class="php">if (!empty($_POST['email'])) { // Email field is not empty and can be processed }</code>
      Salin selepas log masuk

Apa kesilapan biasa yang harus saya elakkan apabila menggunakan isset () dan kosong () dalam php?

Apabila menggunakan isset() dan empty() dalam PHP, beberapa kesilapan biasa harus dielakkan untuk memastikan kod anda berfungsi seperti yang dimaksudkan:

  • Dengan mengandaikan isset() dan empty() boleh ditukar ganti : mereka tidak. isset() cek untuk kewujudan dan keadaan bukan null pembolehubah, sementara empty() cek untuk "kebenaran" pembolehubah. Menggunakannya secara bergantian boleh menyebabkan kesilapan logik.
  • Tidak memeriksa array dengan betul : Apabila berurusan dengan tatasusunan, pastikan anda menggunakan isset() dengan betul untuk memeriksa kekunci bersarang.

    • Tidak betul: if (isset($array)) apabila anda bermaksud menyemak $array['key'] .
    • Betul: if (isset($array['key'])) .
  • Menghadapi Gotchas empty() : ingat bahawa empty() menganggap 0 , "" , dan "0" sebagai kosong, yang mungkin bukan apa yang anda inginkan dalam perbandingan berangka atau rentetan.

    • Tidak betul: Menggunakan empty() untuk memeriksa sama ada pengguna telah memasukkan ID angka yang sah, yang mungkin 0 .
    • Betul: Gunakan cek tertentu, seperti if ($_POST['id'] === '0' || $_POST['id'] > 0) .
  • Mengabaikan pertimbangan prestasi : Walaupun kedua -dua fungsi umumnya cepat, berlebihan atau cek bersarang boleh memberi kesan kepada prestasi. Berhati -hati dengan jumlah cek dan kerumitan mereka, terutamanya dalam gelung atau dengan dataset yang besar.

Dengan memahami dan mengelakkan perangkap biasa ini, anda boleh menggunakan penggunaan isset() dan empty() dalam kod PHP anda.

Atas ialah kandungan terperinci Apakah tujuan isset () dan kosong () dalam php?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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