[PHP基础]有关isset empty 函数的面试题
用isset()和empty()判断下面的变量。
$str = '';
$int = 0 ;
$arr = array();
isset($str) 返回的是 true 还是 false
empty($int) 返回什么
empty($arr)返回什么
答案:
分别是 true true true
解释:
isset函数特性.
任何被赋值的变量,都会是isset状态. 当然NULL是特殊类型,$str = NULL; 使用isset($str) 则为false .
$str = NULL;
$str2 = &$str;
var_dump(isset($str2)); //此处来false
$str = '';
var_dump(isset($str2)); //此处来true
另外,该函数只能判断变量 . 比如 isset(123) 则报错(Fatal error).
empty函数比较有意思 如下代码
var_dump(empty($null_var));
var_dump(empty(0));
var_dump(empty(''));
var_dump(empty(false));
var_dump(empty(null));
var_dump(empty('0'));
var_dump(empty(array()));
以上选部为true
特点,
未定义变量 0 '0' '' false null 空数组 都是true,而且,不必须是变量.
[PHP基础]有关isset empty 函数的面试题的更多相关文章
- php 中 isset()函数 和 empty()函数的区别
首先这两个函数都是用来测试变量的状态: isset()函数判断一个变量是否在 如果存在返回true 否则返回false empty()函数判断一个变量是否为空,如果为空返回true 否则返回fals ...
- php中函数 isset(), empty(), is_null() 的区别,boolean类型和string类型的false判断
php中函数 isset(), empty(), is_null() 的区别,boolean类型和string类型的false判断 实际需求:把sphinx返回的结果放到ssdb缓存里,要考虑到sph ...
- unset() isset() empty difined()操作变量详解
isset()函数 一般用来检测变量是否设置 格式:bool isset ( mixed var [, mixed var [, ...]] ) 功能:检测变量是否设置 返回值: 若变量不存在则返 ...
- phpisset()和empty()函数区别
PHP的isset()函数 一般用来检测变量是否设置 格式:bool isset ( mixed var [, mixed var [, ...]] ) 功能:检测变量是否设置 返回值: 若变量不存在 ...
- PHP empty() 函数
empty() 函数用于检查一个变量是否为空.高佣联盟 www.cgewang.com empty() 判断一个变量是否被认为是空的.当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不 ...
- C++基础(纯虚函数与抽象类)
C++基础之纯虚函数与抽象类 引言 纯虚函数在C++编程中的地位很重要,其关联到了设计模式中"接口"的概念. 语法 纯虚函数的语法: 1. 将成员函数声明为virtual 2. ...
- PHP empty函数报错的解决办法
PHP empty函数在检测一个非变量情况下报错的解决办法. PHP开发时,当你使用empty检查一个函数返回的结果时会报错:Fatal error: Can't use function retur ...
- SQL Server 2008空间数据应用系列四:基础空间对象与函数应用
原文:SQL Server 2008空间数据应用系列四:基础空间对象与函数应用 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测. ...
- php项目踩到的empty函数的一个坑
报错信息: PHP Fatal error: Can't use function return value in write context in /目录省略.../XXService.php on ...
随机推荐
- 初识Http协议抓包工具—Fiddler
1.Fiddler简介 Fiddler是用一款使用C#编写的http协议调试代理工具.它支持众多的http调试任务,能够记录并检查所有你的电脑和互联网之间的http通讯,可以设置断点,查看所有的“进出 ...
- 版本控制之一:SVN服务器搭建与安装(转)
Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上了,下载地址: http:// ...
- TCP协议解析
本文摘抄自:http://www.kuqin.com/shuoit/20141018/342719.html 本文描述了TCP协议,首先简单介绍了TCP完成了一些什么功能:介绍了TCP报文格式,以及典 ...
- Linux系列教程(十四)——Linux用户和用户组管理之相关配置文件
前面我们介绍了软件包管理.首先介绍了rpm包的相关命令,但是我们发现直接安装rpm包会被其依赖性折磨的不行,然后解决办法是yum在线管理,通过yum命令安装rpm包能自动帮助我们解决依赖性.最后又介绍 ...
- Display 和Visible 区别
一. web页面前台编码时经常用到display:none样式,平常使用时发现有几点特征需要注意 1.如果在样式文件或页面文件代码中直接用display:none对元素进行了隐藏,载入页面后, ...
- G彩娱乐网一个程序员到一个销售高手的心路历程
0.引言 我大学本科读的是理工科,后来毕业以后,我逐渐走上了程 序员的道路.每天面对电脑一行一行的敲代码,这被我们程序员们戏称为"搬砖头",因为我们所做的事跟民工搬砖头砌墙本质上是 ...
- Debian6单用户模式
开始的时候按"e"进入Grub的编辑界面,这个时候要找:linux /boot/vmlinuz-2.6.32-5-amd64 root=UUID=.......... ro qui ...
- 【APP问题定位(二)】Charles定位工具
Charles工具是APP测试中简单有使用的一款测试工具,可以通过捕获request和response的信息初步确定bug的原因所在. 本文将从安装.使用两个方面来介绍. 安装 点击这里进入下载页,注 ...
- 【Tesseract】Tesseract API在VS 2013中的配置以及调用
想要在VS中使用Tesseract库,必须使用经过相对应的VS版本编译过的dll以及lib.比如在VS 2013中,就必须使用在VS 2013中编译过的Tesseract库. 这里我给出经过VS 20 ...
- 百度地图Marker优化方案
简介 在使用百度地图的时候,我们需要在地图上增加标注Marker来展示设置信息.随着用户需要不断增多,加载更多的Marker标注信息成为了一种奢望.然而通过自己技术的提升,归结出来了一下方案. 引入百 ...