php 相等性比较 以及 empty,isset, isnull
变量为空
以下的东西被认为是空的:
- “” (空字符串)
- 0 (作为整数的0)
- 0.0 (作为浮点数的0)
- “0” (作为字符串的0)
- NULL
- FALSE
- array() (一个空数组)
- $var; (一个声明了,但是没有值的变量)
判断语句中空值返回false,以下代码不会产生任何输出,因为if 语句中的判断都为false:
<code><span>$emptyList</span> = [<span>""</span>, <span>0</span>, <span>0.0</span>, <span>"0"</span>, <span>NULL</span>, <span>FALSE</span>, <span>array</span>(), <span>$var</span>, ]; <span>foreach</span>(<span>$emptyList</span><span>as</span><span>$val</span>) { <span>if</span> (<span>$val</span>) { var_dump(<span>$val</span>); } }</code>
比较运算符: ==
与 ===
-
==
只涉及到值的比较
<code>var_dump(<span>0</span> == <span>'0.0'</span>); <span>//</span><span>true</span> var_dump(<span>0</span> == <span>''</span>); <span>//</span><span>true</span> var_dump(<span>0</span> == <span>false</span>); <span>//</span><span>true</span></code>
-
===
同时涉及 值 与类型的比较, 更为严格
<code>var_dump(<span>0</span> === <span>'0.0'</span>); <span>//</span><span>false</span> var_dump(<span>0</span> === <span>''</span>); <span>//</span><span>false</span> var_dump(<span>0</span> === <span>false</span>); <span>//</span><span>false</span></code>
- null 与 空值 通过
==
比较, 除了 “0” ,都返回true:
<code><span><span><?php </span><span>$emptyList</span> = [<span>""</span>, <span>0</span>, <span>0.0</span>, <span>"0"</span>, <span>NULL</span>, <span>FALSE</span>, <span>array</span>(), <span>$var</span>, ]; <span>foreach</span>(<span>$emptyList</span><span>as</span><span>$val</span>) { var_dump(<span>$val</span> == <span>null</span>); }</span></span></code>
empty, isset, isnull
- empty:检查一个变量是否为空
<code><?php <span>$emptyList = [<span>""</span>, <span>0</span>, <span>0.0</span>, <span>"0"</span>, NULL, FALSE, array(), <span>$var</span>, ]; foreach (<span>$emptyList</span> as <span>$e</span>) { var_dump(empty(<span>$e</span>)); } /* bool(<span>true</span>) bool(<span>true</span>) bool(<span>true</span>) bool(<span>true</span>) bool(<span>true</span>) bool(<span>true</span>) bool(<span>true</span>) bool(<span>true</span>) */</code>
- isset:判断变量var 存在并且值不是 NULL 则返回 TRUE,否则返回 FALSE。
<code><span>$var</span> = <span>1</span>; var_dump(<span>isset</span>(<span>$var</span>)); <span>// true</span><span>unset</span>(<span>$var</span>); var_dump(<span>isset</span>(<span>$var</span>)); <span>// false</span><span>$var</span> = <span>null</span>; var_dump(<span>isset</span>(<span>$var</span>)); <span>// false</span></code>
- isnull: 判断变量是否 为 null , 等价于
=== null
。
注意
空值之间的==
比较不一定返回 true :
<code><span>// 不具传递性</span><span>var_dump(<span>0</span> == <span>'0'</span>)</span>; <span>// true</span><span>var_dump(<span>''</span> == <span>0</span> )</span>; <span>// true</span><span>var_dump(<span>'0'</span> == <span>''</span>)</span>; <span>// false</span><span>var_dump(<span>0</span> == [])</span>; <span>// false</span></code>
最佳实践
- 空值判断使用 empty 判断;
- isset 无法判断存在但值为null的变量;
- php
==
和===
差别在于后者同时进行类型相等判断
以上就介绍了php 相等性比较 以及 empty,isset, isnull,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Fail dump biasanya merujuk kepada fail binari, juga dikenali sebagai fail dump atau fail dump teras. Fail jenis ini dijana oleh sistem komputer apabila ia menghadapi ralat yang serius atau situasi tidak normal Ia digunakan untuk menyimpan status, tindanan, daftar, imej memori, log dan maklumat lain sistem atau aplikasi.

Perbezaan antara null dan NULL dalam bahasa C ialah: null ialah definisi makro dalam bahasa C, biasanya digunakan untuk mewakili penunjuk nol, yang boleh digunakan untuk memulakan pembolehubah penunjuk, atau untuk menentukan sama ada penuding adalah nol dalam pernyataan bersyarat; NULL ialah definisi makro dalam bahasa C Pemalar yang dipratentukan dalam , biasanya digunakan untuk mewakili nilai nol, digunakan untuk mewakili penunjuk nol, tatasusunan penunjuk nol atau penunjuk struktur nol.

Dalam JavaScript, kedua-dua undefined dan null mewakili konsep "nothing": 1. undefined mewakili pembolehubah tidak dimulakan atau sifat tidak wujud Apabila pembolehubah diisytiharkan tetapi tiada nilai diberikan kepadanya, nilai pembolehubah adalah undefined . apabila mengakses sifat yang tidak wujud dalam objek, nilai yang dikembalikan juga tidak ditentukan;

Kedua-dua null dan undefined menunjukkan kekurangan nilai atau keadaan tidak ditentukan Bergantung pada senario penggunaan, terdapat beberapa prinsip panduan untuk memilih untuk menggunakan null atau undefined: 1. Apabila anda perlu menunjukkan dengan jelas bahawa pembolehubah kosong atau tidak sah, anda. boleh menggunakan null; 2. Apabila pembolehubah telah diisytiharkan tetapi belum diberikan nilai, ia akan ditetapkan kepada tidak ditentukan secara lalai 3. Apabila anda perlu menyemak sama ada pembolehubah kosong atau tidak ditentukan, gunakan pengendali kesamaan yang ketat "= ==" untuk menentukan sama ada pembolehubah itu batal atau tidak ditentukan. .

Perbezaan antara null dan undefined ialah: 1. Makna semantik 2. Senario penggunaan 3. Perbandingan dengan nilai-nilai lain 5. Hubungan dengan parameter fungsi; . Prestasi dalam siri JSON 9. Hubungan dengan jenis. Pengenalan terperinci: 1. Makna semantik, null biasanya bermaksud mengetahui bahawa pembolehubah ini tidak akan mempunyai sebarang nilai objek yang sah, manakala undefined biasanya bermaksud bahawa pembolehubah belum diberikan nilai, atau objek tidak mempunyai atribut ini 2. Senario penggunaan , dsb.

Output dan input audio memerlukan pemacu dan perkhidmatan tertentu untuk berfungsi seperti yang diharapkan pada Windows 11. Ini kadangkala berakhir dengan ralat di latar belakang, menyebabkan masalah audio seperti tiada output audio, peranti audio hilang, audio herot, dsb. Cara Membetulkan Perkhidmatan Audio Tidak Menjawab pada Windows 11 Kami mengesyorkan anda untuk memulakan dengan pembetulan yang dinyatakan di bawah dan menyelesaikan senarai sehingga anda berjaya menyelesaikan isu anda. Perkhidmatan audio mungkin menjadi tidak responsif atas beberapa sebab pada Windows 11. Senarai ini akan membantu anda mengesahkan dan menyelesaikan kebanyakan isu yang menghalang perkhidmatan audio daripada bertindak balas pada Windows 11. Sila ikut bahagian yang berkaitan di bawah untuk membantu anda melalui proses tersebut. Kaedah 1: Mulakan semula perkhidmatan audio yang mungkin anda hadapi

Artikel ini membawakan anda pengetahuan yang berkaitan tentang JavaScript Ia terutamanya memperkenalkan kepada anda perbezaan antara var, let dan const, serta hubungan antara ECMAScript dan JavaScript. Rakan yang berminat boleh melihatnya.

Peranan dan contoh kata kunci var dalam PHP Dalam PHP, kata kunci var digunakan untuk mengisytiharkan pembolehubah. Dalam versi PHP sebelumnya, menggunakan kata kunci var ialah cara idiomatik untuk mengisytiharkan pembolehubah ahli, tetapi penggunaannya tidak lagi disyorkan. Walau bagaimanapun, dalam beberapa kes, kata kunci var masih digunakan. Kata kunci var digunakan terutamanya untuk mengisytiharkan pembolehubah tempatan dan secara automatik menandakan pembolehubah sebagai skop tempatan. Ini bermakna pembolehubah hanya boleh dilihat dalam blok kod semasa dan tidak boleh diakses dalam fungsi atau blok kod lain. Gunakan var
