返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >【PHP面试题03】isset 与 empty 区别
  • 759
分享到

【PHP面试题03】isset 与 empty 区别

php开发语言面试题 2023-09-16 21:09:12 759人浏览 八月长安
摘要

系列文章目录 文章目录 系列文章目录一、问题概述二、isset和empty的基本使用2.1 isset函数2.2 empty函数 三、isset和empty的区别3.1 isset的判断

系列文章目录


文章目录


一、问题概述

本文已收录于PHP全栈系列专栏:PHP面试专区
计划将全覆盖php开发领域所有的面试题对标资深工程师/架构师序列,欢迎大家提前关注定。

PHP是一种广泛使用的服务器端脚本语言,可以编写动态网页,支持面向对象程序设计、命令行接口和图形用户界面。在PHP中,isset与empty是两个常用的函数,本文将介绍它们的区别。

二、isset和empty的基本使用

2.1 isset函数

isset函数是PHP中一个非常重要的函数,它判断一个变量是否已经声明并且不为null值。如果变量存在且不为null,则返回true;否则返回false。

$var = "Hello world!";if (isset($var)) {    echo "变量已声明.";} else {    echo "变量未声明.";}?>

上面的代码输出结果为:变量已声明。

2.2 empty函数

empty函数是检查变量是否为空的函数,如果变量不存在或值为false、0、空字符串、空数组、null,则认为变量为空,返回true;否则返回false。

$var = '';if (empty($var)) {    echo "变量为空.";} else {    echo "变量不为空.";}?>

上面的代码输出结果为:变量为空。

三、isset和empty的区别

isset和empty的区别在于它们对变量的值的判断方式不同。

3.1 isset的判断

isset()函数只有在变量存在且不为null时才会返回true;否则返回false。在下面的例子中,虽然变量存在,但值为0,因此isset()函数返回true。

$var = 0;if (isset($var)) {    echo "变量已声明.";} else {    echo "变量未声明.";}?>

上述代码的输出结果为:变量已声明。

3.2 empty的判断

empty()函数判断变量是否为空,如果变量不存在或值为false、0、空字符串、空数组、null,则认为变量为空,返回true。在下面的例子中,虽然变量存在,但值为0,因此empty()函数返回true。

$var = 0;if (empty($var)) {    echo "变量为空.";} else {    echo "变量不为空.";}?>

上述代码的输出结果为:变量为空。

四、 实际例子

下面举几个实际例子来说明isset和empty函数的使用。

4.1 验证输入参数

WEB应用程序中,用户输入的数据必须经过验证和过滤才能使用。isset和empty函数可以帮助我们验证输入参数。例如,我们要检查表单中用户输入的用户名是否为空,可以使用empty函数:

$username = $_POST['username'];if (empty($username)) {    echo "请输入用户名.";} else {    echo "用户名为:" . $username;}?>

4.2 数组元素存在判断

在使用数组时,有时需要判断某个数组元素是否存在。可以使用isset函数来完成这个任务。例如:

$fruits = array('apple', 'banana', 'orange');if (isset($fruits[2])) {    echo "数组中第三个元素为:" . $fruits[2];} else {    echo "数组中不存在第三个元素.";}?>

4.3 检查文件或目录是否存在

使用PHP的文件系统函数时,可以使用isset和empty函数来检查文件或目录是否存在。例如:

$file = '/path/to/file.txt';if (isset($file) && file_exists($file)) {    echo "文件存在.";} else {    echo "文件不存在.";}?>

总结

在PHP中,isset和empty函数都是常用的函数,但它们的判断方式不同。isset判断变量是否已经声明并且不为null值,而empty判断变量是否为空,包括不存在、false、0、空字符串、空数组、null等情况。在开发Web应用程序时,需要根据实际情况选择合适的函数来完成验证和检查操作。

来源地址:https://blog.csdn.net/qq_21891743/article/details/131321270

--结束END--

本文标题: 【PHP面试题03】isset 与 empty 区别

本文链接: https://lsjlt.com/news/410431.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 【PHP面试题03】isset 与 empty 区别
    系列文章目录 文章目录 系列文章目录一、问题概述二、isset和empty的基本使用2.1 isset函数2.2 empty函数 三、isset和empty的区别3.1 isset的判断...
    99+
    2023-09-16
    php 开发语言 面试题
  • php中isset和empty的区别
    isset 和 empty 是 php 函数,用于检查变量是否已设置或为空。isset 检查变量的存在,无论其值为 null、0 还是空字符串,而 empty 专门检查变量是否为空,包括...
    99+
    2024-04-26
  • PHP中empty()和isset()有什么区别
    这篇文章主要讲解了“PHP中empty()和isset()有什么区别”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP中empty()和isset()有什么区别”吧!二者共同点都可以判定一...
    99+
    2023-06-21
  • PHP中empty()和isset()的区别介绍
    目录二者共同点二者区别1、对于未设置的变量的判断2、对于 "" (空字符串) 的判断3、对于 0 (作为整数的0) 的判断4、对于 0.0 (作为浮点数的0) 的判断5、对于 "0"...
    99+
    2024-04-02
  • 【PHP面试题02】== 与 === 区别
    文章目录 == 比较运算符=== 比较运算符== 和 === 比较运算符的区别实际例子总结 本文已收录于PHP全栈系列专栏:PHP面试专区。 计划将全覆盖PHP开发领域所有的面试题,...
    99+
    2023-10-08
    php 服务器 面试题
  • PHP中的isset()和!empty()函数有什么区别
    这篇文章主要介绍了PHP中的isset()和!empty()函数有什么区别,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.isset()isset ( ...
    99+
    2023-06-14
  • PHP中 empty() 和 isset() 的区别介绍
    目录二者共同点二者区别1、对于未设置的变量的判断2、对于 "" (空字符串) 的判断3、对于 0 (作为整数的0) 的判断4、对于 0.0 (作为浮点数的0) 的判断5、对于 "0" (作为字符串的0) 的判断6、对于 NULL 的判断7、...
    99+
    2019-12-23
    PHP empty() isset()
  • JAVA面试题之Forward与Redirect的区别详解
    前言当用户向服务器发送了一次HTTP请求,该请求可能会经过多个信息资源处理以后才返回给用户,各个信息资源使用请求转发机制相互转发请求,但是用户是感觉不到请求转发的。根据转发方式的不同,可以区分为直接请求转发(Forward)和间接请求转发(...
    99+
    2023-05-31
    java redirect forward
  • 【PHP面试题05】private、protected、public、final 区别是什么
    文章目录 一、介绍二、四种限定词区别2.1 private2.2 protected2.3 public2.4 final 总结 一、介绍 本文已收录于PHP全栈系列专栏:PHP...
    99+
    2023-09-12
    javascript 限定词 PHP Java
  • 面试常见问题之C语言与C++的区别问题
    目录C和C++的区别关键字static在C和C++区别1.定义局部静态变量2.限定访问区域答案结构体在C语言和C++的区别C中malloc和C++的new区别C++引用和C的指针有何...
    99+
    2024-04-02
  • java集合的区别面试题目
    HashMap 和 Hashtable 有什么区别?HashMap 和 Hashtable 都实现了 Map 接口,因此很多特性非常相似。但是,他们有以下不同点: HashMap 允许键和值是 null,而 Hashtable 不允许键或者...
    99+
    2014-07-02
    java面试题 java
  • Android面试专题(七):Serializable 和 Parcelable 的区别
    不诗意的女程序媛不是好厨师~ 转载请注明出处,From李诗雨—https://blog.csdn.net/cjm2484836553/article/details/105161472 首先,我要强行加个图,哈哈哈哈哈~ 面试官:...
    99+
    2022-06-06
    Android
  • Mysql 索引 BTree 与 B+Tree 的区别(面试)
    目录前言BTree 基本概念B+Tree 的特点查找过程的区别B+Tree索引 如何提高索引的查询性能 ?前言 ​ 说起面试,很多同学都经历过,但是 面试中 可能会遇到各种问题,mysql 的问题 也是非常多,最近我也经...
    99+
    2024-04-02
  • 面试官突然问:Vue2与Vue3的区别?
    序现在网上疯传前端已死的言论,其实本质上的原因就是因为人员增多,岗位减少,导致竞争压力加大。社会中现有的问题,我们没有办法解决,但是可以从自身入手,让自己增加竞争力。当多个人争取一个岗位的时候,第二名和最后一名其实没有区别,因为他们只要第一...
    99+
    2023-05-14
    面试 前端 Vue.js
  • Mysql 索引 BTree 与 B+Tree 的区别(面试)
    目录前言BTree 基本概念B+Tree 的特点查找过程的区别B+Tree索引 如何提高索引的查询性能 ?前言 ​ 说起面试,很多同学都经历过,但是 面试中 可能会遇到各种问题,My...
    99+
    2024-04-02
  • 【PHP面试题44】PHP5的版本和PHP7之间有哪些区别
    文章目录 一、前言二、底层调整2.1性能提升2.2 新的引擎2.3 数据类型改进2.4 错误处理改进2.5 语言特性增加 三、应用层差异3.1 兼容性3.2 类和方法改进3.3 错误处理机...
    99+
    2023-10-04
    PHP PHP7 PHP5
  • 当面试官问mysql中char与varchar的区别
    目录char与varchar的区别char与varchar的区别 以上就是当面试官问mysql中char与varchar的区别的详细内容,更多关于char与varchar...
    99+
    2024-04-02
  • 面试问Vue2与Vue3的区别怎么回答
    这篇文章主要讲解了“面试问Vue2与Vue3的区别怎么回答”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“面试问Vue2与Vue3的区别怎么回答”吧!Vue 内部根据功能可以被分为三个大的模块...
    99+
    2023-07-05
  • python面试题之read、readline和readlines的区别详解
    目录一、read1.txt文件内容二、readline三、readlines总结一、read 可以一次性读取文件中所有内容 1.txt文件内容 ...
    99+
    2024-04-02
  • Java中方法重写与重载有什么区别-面试常考问题
    这篇文章主要介绍“Java中方法重写与重载有什么区别-面试常考问题”,在日常操作中,相信很多人在Java中方法重写与重载有什么区别-面试常考问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java中方法重写...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作