PHP易混淆函数的区别及用法汇总


Posted in PHP onNovember 22, 2014

本文实例分析了PHP易混淆函数的区别及用法。分享给大家供大家参考。具体分析如下:

1.echo和print的区别
PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的。echo输出后没有返回值,但print有返回值,当其执行失败时返回flase。因此可以作为一个普通函数来使用,例如执行下面的代码后变量$r的值将为1。

PHP代码:

$r = print "Hello World";

这意味着print可用在一些复杂的表达式中,而echo则不行。但是,因为echo语句不要求返回任何数值,所已在代码中echo语句的运行效率要略微快于print语句。

2.include与require的区别

include()与require()的功能也基本相同(包含),但在用法上也有一些不同,include()是有条件包含函数,而require()则是无条件包含函数。例如在下面代码中,如果变量$a为真,则将包含文件a.php:

PHP代码:

if($a){

include("a.php");

}

而require()则和include()不同,不管$a取何值,下面的代码将把文件a.php包含进文件里:

PHP代码:

if($a){

require("a.php");

}

在错误处理方面,使用include语句,如果发生包含错误,程序将跳过include语句,虽然会显示错误信息但是程序还是会继续执行!但requre却会给你来个致命错误。
当然,从字面意思上我们也可以理解七分:requre是很强硬的请求、要求的意思。

3.require_once()和include_once()语句

题外话了,因为长的像,简单require_once()和include_once()语句分别对应于require()和 include()语句。 require_once() 和include_once()语句主要用于需要包含多个文件时,可以有效地避免把同一段代码包含进去而出现函数或变量重复定义的错误。

4.空字符串(")和NULL的区别

PHP中空字符串和NULL都是以值为0存储的,但是他们的类型并不一样,你可以试一下echo gettype(");和echo gettype(NULL);你会发现他们打印出来的分别是string和NULL,当然还有0也容易混淆,你可以试试echo gettype(0);打印一下类型,会发现0的类型是integer(整型),可见字符串(")、NULL和0是"等值"但不等类型。

5.!isset和empty的区别

从字面意思上我们就可以明白:empty是判断一个变量是否为"空",而isset 则是判断一个变量是否已经设置。但是这里有一点绝对要注意起来:当一个变量值为0,empty 认为这个变量同等于空,即相当于没有设置。比如当我们检测$id 变量的时候,当$id=0 ,用empty和isset来检测变量$id是否已经配置,两都将返回不同的值:empty 认为没有配置,isset 则能够取得 $id 的值,看下边例子:

PHP代码:

$id=0;

empty($id)?print "我是空的":print "我是$id ."; //结果:我是空的

!isset($id)?print "我是空的":print "我是$id .";//结果:我是0

6.==(等)和===(恒等)的区别

回顾上面第四条空字符串("")和NULL的区别,再来看一个例子:

PHP代码:

" == NULL;

" === NULL;

运行之后你会发现第一个为true,而第二个则为false!可见==只是比较值是否相等,而===则不但比较值,还会比较类型,更为严格。

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
上传多个文件的PHP脚本
Nov 26 PHP
完美解决PHP中文乱码
Nov 26 PHP
Linux中用PHP判断程序运行状态的2个方法
May 04 PHP
一个php短网址的生成代码(仿微博短网址)
May 07 PHP
PHP return语句另类用法不止是在函数中
Sep 17 PHP
Laravel 5 框架入门(四)完结篇
Apr 09 PHP
joomla数据库操作示例代码
Jan 06 PHP
php结合md5实现的加密解密方法
Jan 25 PHP
Yii2表单事件之Ajax提交实现方法
May 04 PHP
PHP中常见的密码处理方式和建议总结
Oct 14 PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
Jul 03 PHP
PhpStorm2020.1 安装 debug - Postman 调用的详细教程
Aug 17 PHP
thinkphp使用literal防止模板标签被解析的方法
Nov 22 #PHP
ThinkPHP控制器里javascript代码不能执行的解决方法
Nov 22 #PHP
thinkphp连贯操作实例分析
Nov 22 #PHP
ThinkPHP处理Ajax返回的方法
Nov 22 #PHP
php隐藏IP地址后两位显示为星号的方法
Nov 21 #PHP
php中try catch捕获异常实例详解
Nov 21 #PHP
PHP生成不重复标识符的方法
Nov 21 #PHP
You might like
PHP递归返回值时出现的问题解决办法
2013/02/19 PHP
PHP 登录完成后如何跳转上一访问页面
2014/01/14 PHP
php中的ini配置原理详解
2014/10/14 PHP
摘自百度的图片轮换效果代码
2007/11/19 Javascript
经典海量jQuery插件 大家可以收藏一下
2010/02/07 Javascript
取得窗口大小 兼容所有浏览器的js代码
2011/08/09 Javascript
jQuery地图map悬停显示省市代码分享
2015/08/20 Javascript
js与jQuery实现的用户注册协议倒计时功能实例【三种方法】
2017/11/09 jQuery
深度了解vue.js中hooks的相关知识
2019/06/14 Javascript
JS实现继承的几种常用方式示例
2019/06/22 Javascript
Vue中跨域及打包部署到nginx跨域设置方法
2019/08/26 Javascript
js实现双色球效果
2020/08/02 Javascript
[02:08]2014DOTA2国际邀请赛 430专访:力争取得小组前二
2014/07/11 DOTA
Python 字符串定义
2009/09/25 Python
Python三级目录展示的实现方法
2016/09/28 Python
如何使用Python进行OCR识别图片中的文字
2019/04/01 Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
2020/01/09 Python
Python如何生成xml文件
2020/06/04 Python
简述python&pytorch 随机种子的实现
2020/10/07 Python
Python LMDB库的使用示例
2021/02/14 Python
基于MUI框架使用HTML5实现的二维码扫描功能
2018/03/01 HTML / CSS
Ann Taylor官方网站:美国最大的女性产品制造商之一
2016/09/14 全球购物
英国国家美术馆商店:National Gallery
2019/05/01 全球购物
公务员培训自我鉴定
2013/09/19 职场文书
大学生创业感言
2014/01/25 职场文书
美容院考勤制度
2014/01/30 职场文书
军训自我鉴定范文
2014/02/13 职场文书
投标服务承诺书
2014/05/28 职场文书
知识就是力量演讲稿
2014/09/13 职场文书
校长师德师风自我剖析材料
2014/09/29 职场文书
党校学习党性分析材料
2014/12/19 职场文书
先进党支部申报材料
2014/12/24 职场文书
大一学生个人总结
2015/02/15 职场文书
活动总结书怎么写
2015/05/11 职场文书
《狼牙山五壮士》读后感:宁死不屈,视死如归
2019/08/16 职场文书
python数字图像处理:图像的绘制
2022/06/28 Python