Dalam pengaturcaraan, adalah penting untuk menyemak dengan berkesan sama ada pembolehubah ditetapkan dan mempunyai nilai yang sah. Dua fungsi yang biasa digunakan dalam PHP untuk semakan ini ialah isset() dan empty(). Artikel ini meneroka perbezaan antara kedua-duanya dan memberikan panduan tentang masa untuk menggunakan setiap satu.
Fungsi empty() membuat penilaian menyeluruh sama ada pembolehubah kosong. Ia bukan sahaja menyemak sama ada pembolehubah wujud (seperti isset()), tetapi ia juga menentukan sama ada ia adalah rentetan kosong, sifar, nilai nol atau tatasusunan kosong.
Nilai berikut dianggap kosong oleh kosong. ():
Tidak seperti empty(), isset() hanya menyemak sama ada pembolehubah ditetapkan, tanpa mengira nilainya. Jika pembolehubah telah diberikan sebarang nilai, walaupun null, isset() mengembalikan benar. Ini kerana isset() menganggap null sebagai nilai yang sah.
Pilihan antara isset() dan empty() bergantung pada keperluan khusus . Jika anda perlu mengesahkan bahawa pembolehubah ditetapkan secara eksplisit dan tidak kosong (termasuk sifar), gunakan empty(). Sebaliknya, jika anda ingin menyemak kehadiran pembolehubah semata-mata, tanpa mengira nilainya, gunakan isset().
Pertimbangkan kod berikut:
$var = '23'; if (isset($var) && !empty($var)){ echo 'not empty'; } else { echo 'is not set or empty'; }
Sebaliknya, jika $var ditetapkan kepada null, isset() akan kembali benar (kerana ia wujud), tetapi kosong() akan kembali benar (kerana ia kosong).
Kesimpulan:
Kosong() fungsi adalah lebih komprehensif daripada isset() kerana kedua-duanya mengesahkan sama ada pembolehubah ditetapkan dan menilai kekosongannya. Walau bagaimanapun, jika anda hanya perlu menyemak sama ada pembolehubah wujud, tanpa mengira nilainya, isset() ialah pilihan yang sesuai.
Atas ialah kandungan terperinci `isset()` lwn. `empty()` dalam PHP: Bilakah Saya Perlu Menggunakan Setiap Fungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!