php echo()和print()、require()和include()函数区别说明


Posted in PHP onMarch 27, 2010

1.echo和print的区别

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

$r = print “Hello World”;  

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

2.include与require的区别

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

if($a){    
include(“a.php”);    
}  

而require()则和include()不同,不管$a取何值,下面的代码将把文件a.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 的值,看下边例子:
   $id=0;   
   emptyempty($id)?print “我是空的”:print “我是$id .”; //结果:我是空的   
   !isset($id)?print “我是空的”:print “我是$id .”;//结果:我是0   

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

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

” == NULL;   
” === NULL;  

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

PHP 相关文章推荐
php unset全局变量运用问题的深入解析
Jun 17 PHP
PHP计算2点经纬度之间的距离代码
Aug 12 PHP
PHP中使用glob函数实现一句话删除某个目录下的所有文件
Jul 22 PHP
php+mysql实现无限分类实例详解
Jan 15 PHP
php将金额数字转化为中文大写
Jul 09 PHP
PHP Yii框架之表单验证规则大全
Nov 16 PHP
微信支付PHP SDK之微信公众号支付代码详解
Dec 09 PHP
修改WordPress中文章编辑器的样式的方法详解
Dec 15 PHP
Yii框架表单模型和验证用法
May 20 PHP
PHP获取网站中各文章的第一张图片的代码示例
May 20 PHP
PHP魔术方法以及关于独立实例与相连实例的全面讲解
Oct 18 PHP
ThinkPHP使用getlist方法实现数据搜索功能示例
May 08 PHP
PHP 一个比较完善的简单文件上传
Mar 25 #PHP
php+mysql 实现身份验证代码
Mar 24 #PHP
PHP 抓取网页图片并且另存为的实现代码
Mar 24 #PHP
Cakephp 执行主要流程
Mar 24 #PHP
php中的观察者模式
Mar 24 #PHP
PHP 获取远程文件内容的函数代码
Mar 24 #PHP
PHP中基本符号及使用方法
Mar 23 #PHP
You might like
php 上一篇,下一篇文章实现代码与原理说明
2010/05/09 PHP
php变量范围介绍
2012/10/15 PHP
php中filter_input函数用法分析
2014/11/15 PHP
php数组转成json格式的方法
2015/03/09 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
PHP自定义错误处理的方法分析
2018/12/19 PHP
JavaScript 原型继承
2011/12/26 Javascript
用客户端js实现带省略号的分页
2013/04/27 Javascript
jQuery调用ajax请求的常见方法汇总
2015/03/24 Javascript
javascript鼠标右键菜单自定义效果
2020/12/08 Javascript
利用JS实现点击按钮后图片自动切换的简单方法
2016/10/24 Javascript
简单谈谈axios中的get,post方法
2017/06/25 Javascript
AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能示例
2018/04/21 Javascript
JavaScript实现新年倒计时效果
2018/11/17 Javascript
vue中input的v-model清空操作
2019/09/06 Javascript
详解vuejs中执行npm run dev出现页面cannot GET/问题
2020/04/26 Javascript
Js on及addEventListener原理用法区别解析
2020/07/11 Javascript
jQuery实现雪花飘落效果
2020/08/02 jQuery
Vue实现返回顶部按钮实例代码
2020/10/21 Javascript
vue3.0实现点击切换验证码(组件)及校验
2020/11/18 Vue.js
[55:16]Mski vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
python基础教程之Hello World!
2014/08/29 Python
Python中super关键字用法实例分析
2015/05/28 Python
深入解读Python解析XML的几种方式
2016/02/16 Python
Python获取SQLite查询结果表列名的方法
2017/06/21 Python
python常用库之NumPy和sklearn入门
2019/07/11 Python
python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)
2019/08/06 Python
如何理解python中数字列表
2020/05/29 Python
法国购买隐形眼镜和眼镜网站:Optical Center
2019/10/08 全球购物
澳大利亚家具商店:Freedom
2020/12/17 全球购物
土木工程毕业生自荐信
2013/11/12 职场文书
华清池导游词
2015/02/02 职场文书
业务内勤岗位职责
2015/04/13 职场文书
主题班会开场白
2015/06/01 职场文书
想创业成功,需要掌握这些要点
2019/12/06 职场文书
MySQL基础(二)
2021/04/05 MySQL