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桌面中心(二) 数据库写入
Mar 11 PHP
PHP下一个非常全面获取图象信息的函数
Nov 20 PHP
初次接触php抽象工厂模式(Elgg)
Mar 21 PHP
如何使用php判断所处服务器操作系统的类型
Jun 20 PHP
PHP读取文件内容后清空文件示例代码
Mar 18 PHP
php实现删除指定目录下相关文件的方法
Oct 20 PHP
浅析php适配器模式(Adapter)
Nov 25 PHP
Codeigniter购物车类不能添加中文的解决方法
Nov 29 PHP
php导入excel文件到mysql数据库的方法
Jan 14 PHP
PHP获取文件夹大小函数用法实例
Jul 01 PHP
初识PHP中的Swoole
Apr 05 PHP
php利用递归实现删除文件目录的方法
Sep 23 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
UTF-8正则表达式如何匹配汉字
2015/08/03 PHP
jQuery+PHP发布的内容进行无刷新分页(Fckeditor)
2015/10/22 PHP
PHP的PDO大对象(LOBs)
2019/01/27 PHP
Laravel框架处理用户的请求操作详解
2019/12/20 PHP
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
Js-$.extend扩展方法使方法参数更灵活
2013/01/15 Javascript
解决JQeury显示内容没有边距内容紧挨着浏览器边线
2013/12/20 Javascript
javascript中DOM复选框选择用法实例
2015/05/14 Javascript
浅谈javascript构造函数与实例化对象
2015/06/22 Javascript
jQuery实现的调整表格行tr上下顺序
2016/01/10 Javascript
JavaScript 定时器 SetTimeout之定时刷新窗口和关闭窗口(代码超简单)
2016/02/26 Javascript
浅析Bootstrap验证控件的使用
2016/06/23 Javascript
Bootstrap如何激活导航状态
2017/03/22 Javascript
js简单实现网页换肤功能
2017/04/07 Javascript
d3.js实现立体柱图的方法详解
2017/04/28 Javascript
详解vue中使用express+fetch获取本地json文件
2017/10/10 Javascript
详解50行代码,Node爬虫练手项目
2019/04/22 Javascript
手写Vue弹窗Modal的实现代码
2019/09/11 Javascript
Vue.js 实现地址管理页面思路详解(地址添加、编辑、删除和设置默认地址)
2019/12/11 Javascript
JavaScript实现模态对话框实例
2020/01/13 Javascript
如何在Vue.JS中使用图标组件
2020/08/04 Javascript
Python实现测试磁盘性能的方法
2015/03/12 Python
Python编程中对文件和存储器的读写示例
2016/01/25 Python
win10环境下python3.5安装步骤图文教程
2017/02/03 Python
python实现播放音频和录音功能示例代码
2018/12/30 Python
python3中类的继承以及self和super的区别详解
2019/06/26 Python
python 实现将多条曲线画在一幅图上的方法
2019/07/07 Python
Python实现常见的几种加密算法(MD5,SHA-1,HMAC,DES/AES,RSA和ECC)
2020/05/09 Python
Timberland美国官网:全球领先的户外品牌
2016/08/15 全球购物
美国名牌手表折扣网站:Jomashop
2020/05/22 全球购物
最新的大学生找工作自我评价
2013/09/29 职场文书
医院护士党的群众路线教育实践活动对照检查材料思想汇报
2014/10/04 职场文书
科学发展观标语
2014/10/08 职场文书
刑事案件上诉状
2015/05/23 职场文书
html5中sharedWorker实现多页面通信的示例代码
2021/05/07 Javascript
梳理总结Python开发中需要摒弃的18个坏习惯
2022/01/22 Python