Rumah >pembangunan bahagian belakang >masalah PHP >php中empty和isset用法的区别是什么?

php中empty和isset用法的区别是什么?

青灯夜游
青灯夜游asal
2020-04-24 18:03:473459semak imbas

php中empty和isset用法的区别是什么?下面本篇文章给大家介绍一下php中empty函数与isset函数的用法区别。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

php中empty和isset用法的区别是什么?

isset

isset只有在变量是null的时候返回false 其他任何时候返回true

(php中认为变量是null的情况 1、未赋值或初始化的变量。2、赋值为null的变量)

$null = null;
$num = 0;
$str = '';
$bool = false;
var_dump(isset($null)); // false
var_dump(isset($num));  // true
var_dump(isset($str));  // true
var_dump(isset($bool)); // true

empty

empty判断变量为空的情况 有5种情况会返回true

1、空字符串 ''

2、数字零 0

3、bool值 false

4、null

5、字符串零  '0'

$null = null;
$num = 0;
$str = '';$bool = false;var_dump(empty($null)); // true
var_dump(empty($num)); // true
var_dump(empty($snum)); // true
var_dump(empty($str)); // true
var_dump(empty($bool)); // true

总结:

isset只有在值为null时候人为没有设置值 返回false

empty会对5种情况判定为空值

注意:这两个函数的参数只能是变量不能是常量

empty(0)
empty('abc')
isset(null)

这样的写法是会报错的

更多相关知识,请关注 PHP中文网!!

Atas ialah kandungan terperinci php中empty和isset用法的区别是什么?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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