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

/*******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() 可让指针回到开始处。

 
 

$a = array (‘a' => ‘apple', ‘b' => ‘banana', ‘c' => array (‘x','y','z'));

print_r ($a);

?>

上边的代码将输出:

 
 

Array

(

[a] => apple

[b] => banana

[c] => Array

(

[0] => x

[1] => y

[2] => z

)

)

如果想捕捉 print_r() 的输出,可使用 return 参数。若此参数设为 TRUE,print_r() 将不打印结果(此为默认动作),而是返回其输出。

例子 1. return 参数示例

$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,从而返回变量的表示。

 
 

$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

*/

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值