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 相关文章推荐
example2.php
Oct 09 PHP
?算你??的 PHP 程式大小
Dec 06 PHP
简单PHP上传图片、删除图片实现代码
May 12 PHP
php include加载文件两种方式效率比较
Aug 08 PHP
PHP 查找字符串常用函数介绍
Jun 07 PHP
深入PHP curl参数的详解
Jun 17 PHP
解析MySql与Java的时间类型
Jun 22 PHP
php获取字段名示例分享
Mar 03 PHP
php除数取整示例
Apr 24 PHP
php 人员权限管理(RBAC)实例(推荐)
May 24 PHP
Yii2压缩PHP中模板代码的输出问题
Aug 28 PHP
php输出文字乱码的解决方法
Oct 04 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/03 咖啡文化
关于php操作mysql执行数据库查询的一些常用操作汇总
2013/06/24 PHP
PHP如何根据文件头检测文件类型实例代码
2018/10/14 PHP
laravel model模型定义实现开启自动管理时间created_at,updated_at
2019/10/17 PHP
php实现的简单多进程服务器类完整示例
2020/02/01 PHP
JavaScript 高级篇之函数 (四)
2012/04/07 Javascript
jQuery布局插件UI Layout简介及使用方法
2013/04/03 Javascript
jQuery下实现等待指定元素加载完毕(可改成纯js版)
2013/07/11 Javascript
浅谈JavaScript字符串拼接
2015/06/25 Javascript
Bootstrap Table从服务器加载数据进行显示的实现方法
2016/09/29 Javascript
javascript实现根据函数名称字符串动态执行函数的方法示例
2016/12/28 Javascript
javascript 判断当前浏览器版本并判断ie版本
2017/02/17 Javascript
Omi v1.0.2发布正式支持传递javascript表达式
2017/03/21 Javascript
原生js二级联动效果
2017/06/20 Javascript
JavaScript实现的反序列化json字符串操作示例
2018/07/18 Javascript
design vue 表格开启列排序的操作
2020/10/28 Javascript
原生js实现九宫格拖拽换位
2021/01/26 Javascript
详解在Python和IPython中使用Docker
2015/04/28 Python
Python连接MySQL并使用fetchall()方法过滤特殊字符
2016/03/13 Python
Python教程之全局变量用法
2016/06/27 Python
用Python将动态GIF图片倒放播放的方法
2016/11/02 Python
完美解决Python2操作中文名文件乱码的问题
2017/01/04 Python
Python3 修改默认环境的方法
2019/02/16 Python
简单了解Python matplotlib线的属性
2019/06/29 Python
python3跳出一个循环的实例操作
2020/08/18 Python
python自动化测试三部曲之request+django实现接口测试
2020/10/07 Python
python help函数实例用法
2020/12/06 Python
使用CSS3的rem属性制作响应式页面布局的要点解析
2016/05/24 HTML / CSS
vivo智能手机官方商城:vivo
2016/09/22 全球购物
英国户外装备商店:Ultimate Outdoors
2019/05/07 全球购物
Sql面试题
2013/03/20 面试题
五一服装活动方案
2014/01/11 职场文书
优秀经理事迹材料
2014/02/01 职场文书
党员个人查摆剖析材料
2014/10/16 职场文书
Rust 连接 PostgreSQL 数据库的详细过程
2022/01/22 PostgreSQL
Python 使用 Frame tkraise() 方法在 Tkinter 应用程序中的Frame之间切换
2022/04/24 Python