php中print(),print_r(),echo()的区别详解

yipeiwu_com6年前PHP代码库

echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用)  

print()      只能打印出简单类型变量的值(如int,string)  

print_r() 可以打印出复杂类型变量的值(如数组,对象)  

echo        输出一个或者多个字符串

print --输出一个字符串

Description

int print ( string arg )//返回值为整形

print " 你好朋友" ;

可以进行下面操作

复制代码 代码如下:

$name=print " nihao \n" ;
$str = 'test print value is $name .';
eval_r(" \$print=\" $str\" ; " );
echo $print;

print_r -- 打印关于变量的易于理解的信息。

bool print_r ( mixed expression_r [, bool return] ) //返回值是布尔型的,参数是mix类型的,可以是字符串,整形,数组,对象类print_r() 显示关于一个变量的易于理解的信息。如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。object 与数组类似。

print_r() 将把数组的指针移到最后边。

你可以

复制代码 代码如下:

print_r(str);
print_r(int);
print_r(array);
print_r(obj);

也可以用var_dump var_export

echo -- 输出一个或者多个字符串

Description

void echo ( string arg1 [, string ...] ) //返回值为空

echo " 你好" ," 朋友" ;

总结:

PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的。echo输出后没有返回值,但print有返回值,当其执行失败时返回flase。因此可以作为一个普通函数来使用,例如执行下面的代码后变量$r的值将为1。
$r = print "Hello World";
这意味着print可用在一些复杂的表达式中,而echo则不行。但是,因为echo语句不要求返回任何数值,所已在代码中echo语句的运行效率要略微快于print语句。

echo 没有返回值;print 有返回值,print 的返回值总是1。

相关文章

php IP及IP段进行访问限制的代码

192.168.1.1 单个IP 192.168.1.* 这样代理 192.168.1.1-192.168.1-255 192.158.1.2-20 这样是代表192.158.1.2-1...

thinkphp在低版本Nginx 下支持PATHINFO的方法分享

最近在用thinkphp做一个项目,基本完成后部署到nginx服务器上才发觉nginx是不支持pathinfo的那么我们如何来处理呢。 Nginx环境 在Nginx低版本中,是不支持PA...

PHP 执行系统外部命令 system() exec() passthru()

区别: system() 输出并返回最后一行shell结果。 exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。 passthru() 只调用命...

浅谈PHP接入(第三方登录)QQ登录 OAuth2.0 过程中遇到的坑

前言 绝大多数网站都集成了第三方登录,降低了注册门槛,增强了用户体验。最近看了看 QQ 互联上 QQ 登录的接口文档。接入 QQ 登录的一般流程呢,是这样的:先申请开发者 -> 然...

php中Redis的应用--消息传递

php中Redis的应用--消息传递

阅读目录 1、摘要 2、实现方法 3、一对一消息传递 4、多对多消息传递 1、摘要 消息传递这一应用广泛存在于各个网站中,这个功能也是一个网站必不可少的。常见的消息传递应用有,新浪微博中...