php echo, print, print_r, sprintf, var_dump, var_expor的使用区别


Posted in PHP onJune 20, 2013

/*******echo********/
echo— 输出一个或多个字符串
描述
echo ( string arg1 [, string ...] )
echo()实际上不是一个函数(它是一个语言结构),所以您不需要使用括号。echo()的(不同于其他一些语言构造)并不像一个功能,所以它不能总是在函数中使用。此外,如果你想传递多个参数的echo(),参数必须不被括在括号内。
echo()是命令,不能返回值。echo后面可以跟很多个参数,之间用分号隔开,如:
echo $myvar1;
echo 1,2,$myvar,”bold”;

/*******print********/
print— 输出一个或多个字符串
描述
int print ( string arg )
print()是实际上没有一个真正的函数(它是一个语言结构),所以你并不需要使用它的参数列表的括号。
 可以返回一个值,只能有一个参数

/*******print_r()********/
 print_r
(PHP 4, PHP 5)
print_r ?  打印关于变量的易于理解的信息。
描述
bool print_r ( mixed expression [, bool return] )
注: 参数 return 是在 PHP 4.3.0 的时候加上的
print_r() 显示关于一个变量的易于理解的信息。如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。object 与数组类似。
记住,print_r() 将把数组的指针移到最后边。使用 reset() 可让指针回到开始处。
<pre>
<?php
    $a = array (‘a' => ‘apple', ‘b' => ‘banana', ‘c' => array (‘x','y','z'));
    print_r ($a);
?>
</pre>
上边的代码将输出: <pre>
Array
(
    [a] => apple
    [b] => banana
    [c] => Array
        (
            [0] => x
            [1] => y
            [2] => z
        )
)
</pre>
如果想捕捉 print_r() 的输出,可使用 return 参数。若此参数设为 TRUE,print_r() 将不打印结果(此为默认动作),而是返回其输出。
例子 1. return 参数示例
<?php
    $b = array (‘m' => ‘monkey', ‘foo' => ‘bar', ‘x' => array (‘x', ‘y', ‘z'));
    $results = print_r ($b, true); //$results 包含了 print_r 的输出结果
?>

注: 如果想在 PHP 4.3.0 之前的版本中捕捉 print_r() 的输出,可使用输出控制函数。
注: 在 PHP 4.0.4 之前的版本中,如果给出的 array 或 object 包含了直接或间接指向自身的引用,print_r() 将永远继续下去。print_r($GLOBALS) 就是一个例子,因为 $GLOBALS 自身即是全局变量,其包含了指向自身的引用。
 /*******sprintf()********/

/*******var_dump()********/
var_dump
(PHP 3 >= 3.0.5, PHP 4, PHP 5)
var_dump — 打印变量的相关信息
描述
void var_dump ( mixed expression [, mixed expression [, ...]] )
此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。
提示: 为了防止程序直接将结果输出到浏览器,可以使用输出控制函数来捕获此函数的输出,并把它们保存到一个例如 string 类型的变量中。

/*******var_export()********/
var_export
(PHP 4 >= 4.2.0, PHP 5)
var_export — 输出或返回一个变量的字符串表示
描述
mixed var_export ( mixed expression [, bool return] )
此函数返回关于传递给该函数的变量的结构信息,它和 var_dump() 类似,不同的是其返回的表示是合法的 PHP 代码。
var_export必须返回合法的php代码, 也就是说,var_export返回的代码,可以直接当作php代码赋值个一个变量。 而这个变量就会取得和被var_export一样的类型的值
 但是, 当变量类型为resource的时候, 是无法简单copy复制的,所以, 当var_export的变量是resource类型时, var_export会返回NULL

$res = fopen('status.html', 'r');
var_dump($res); //resource(2) of type (stream)
var_export($res); //NULL

您可以通过将函数的第二个参数设置为 TRUE,从而返回变量的表示。
<pre>
<?php
$a = array (1, 2, array (“a”, “b”, “c”));
var_export ($a);
/* 输出:
array (
  0 => 1,
  1 => 2,
  2 =>
  array (
    0 => ‘a',
    1 => ‘b',
    2 => ‘c',
  ),
)
*/
$b = 3.1;
$v = var_export($b, TRUE);
echo $v;
/* 输出:
3.1
*/
?>
</pre>
PHP 相关文章推荐
Zend Studio 无法启动的问题解决方法
Dec 04 PHP
php 设计模式之 工厂模式
Dec 19 PHP
解析PHP的session过期设置
Jun 29 PHP
深入解析PHP中逗号与点号的区别
Aug 05 PHP
php while循环得到循环次数
Oct 26 PHP
yii中widget的用法
Dec 03 PHP
thinkPHP实现MemCache分布式缓存功能
Mar 23 PHP
php使用变量动态创建类的对象用法示例
Feb 06 PHP
PHP框架Laravel中实现supervisor执行异步进程的方法
Jun 07 PHP
利用PHP判断是手机移动端还是PC端访问的函数示例
Dec 14 PHP
PDO::getAvailableDrivers讲解
Jan 28 PHP
PHP dirname简单使用代码实例
Nov 13 PHP
php Xdebug的安装与使用详解
Jun 20 #PHP
解析phpstorm + xdebug 远程断点调试
Jun 20 #PHP
hadoop中一些常用的命令介绍
Jun 19 #PHP
hadoop常见错误以及处理方法详解
Jun 19 #PHP
php常用Output和ptions/Info函数集介绍
Jun 19 #PHP
解析PHP中的正则表达式以及模式匹配
Jun 19 #PHP
php无限分类且支持输出树状图的详细介绍
Jun 19 #PHP
You might like
无线电波是什么?它是怎样传输的?
2021/03/01 无线电
php采用curl实现伪造IP来源的方法
2014/11/21 PHP
jQuery 数据缓存data(name, value)详解及实现
2010/01/04 Javascript
引用外部js乱码问题分析及解决方案
2013/04/12 Javascript
JS小功能(onmouseover实现选择月份)实例代码
2013/11/28 Javascript
Javascript实现单张图片浏览
2014/12/18 Javascript
js+jquery常用知识点汇总
2015/03/03 Javascript
使用jQuery在对象中缓存选择器的简单方法
2015/06/30 Javascript
js实现汉字排序的方法
2015/07/23 Javascript
阿里巴巴技术文章分享 Javascript继承机制的实现
2016/01/14 Javascript
Node.js学习入门
2017/01/03 Javascript
详解Vue-Cli 异步加载数据的一些注意点
2017/08/12 Javascript
SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题的解决方法
2018/01/09 Javascript
jQuery UI实现动画效果代码分享
2018/08/19 jQuery
解决vue的 v-for 循环中图片加载路径问题
2018/09/03 Javascript
解决Vue在封装了Axios后手动刷新页面拦截器无效的问题
2018/11/08 Javascript
jQuery实现的简单日历组件定义与用法示例
2018/12/24 jQuery
es6 filter() 数组过滤方法总结
2019/04/03 Javascript
[01:00:22]DOTA2-DPC中国联赛定级赛 LBZS vs Magma BO3第三场 1月10日
2021/03/11 DOTA
使用Python爬取最好大学网大学排名
2018/02/24 Python
Python 实现字符串中指定位置插入一个字符
2018/05/02 Python
PYTHON基础-时间日期处理小结
2018/05/05 Python
浅析Python 3 字符串中的 STR 和 Bytes 有什么区别
2018/10/14 Python
pandas的排序和排名的具体使用
2019/07/31 Python
keras的siamese(孪生网络)实现案例
2020/06/12 Python
使用Python实现微信拍一拍功能的思路代码
2020/07/09 Python
python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
2020/08/04 Python
STUBHUB日本:购买和出售全球活动门票
2018/07/01 全球购物
英国IT硬件供应商,定制游戏PC:Mesh Computers
2019/03/28 全球购物
在阿联酋购买翻新手机和平板电脑:Teckzu
2021/02/12 全球购物
《美丽的田园》教学反思
2014/03/01 职场文书
人资专员岗位职责
2014/04/04 职场文书
慈善捐赠倡议书
2014/08/30 职场文书
红高粱观后感
2015/06/10 职场文书
2015年秋学期教研工作总结
2015/10/14 职场文书
公务员的复习计划书,请收下!
2019/07/15 职场文书