XOBM

WEB建站知识

您的位置: XOBM网   >   Php列表   >   php中print_r ,var_dump和var_export几个函数的用法区别

php中print_r、var_dump和var_export几个函数的用法区别:

在php中用于调试的有很多方法如:print、echo用来打印普通的变量内容,

下面介绍一下print_r、var_dump、var_export几个函数的用法区别,他们都是用来打印数组对象。

1、print_r ( $array/$var )

print 是打印的意思,而r则取自Array的单词,那么该函数的功能就是打印数组内容,它既可以打印数组内容,也可以打印普通的变量。

print_r ($_REQUEST) ;

print_r ($_GET) ; /* 打印使用GET方法传递的表单内容*/

print_r($_POST) ; /* 打印使用表单POST方法传递过的数组内容*/

2、 var_dump ($object/$array/$var)

var 代表变量(Variable),变量包括对象、数组以及标量变量,dump有倒出之意,加在一块,就是将变量或对象的内容全部输出出来。

var_dump($DB) ; /*打印$DB数据库连接对象的内容*/

var_dump($fileHandle) ; /*打印文件句柄对象的内容*/

var_dump($Smarty) ; /*打印Smarty模板对象*/

3、 var_export($object/$array/$var)

输出或返回一个变量的字符表示。此函数返回关于传递给函数的变量的结构信息,它和print_r()类似,不同的是其返回的表示是合法的PHP代码。可以通过将函数的第二个参数设置为TRUE,从而返回变量的表示。

看下面代码:

<?php

$a = array (1,2, array("a","b","c")) ;

var_export ($a) ;

echo "<br>" ;

$v = var_export ($a , TRUE) ;

echo $v ;

?>

上例中,$v = var_export ( $a , TRUE) 表示返回的是PHP的源代码,可以直接用PHP脚本的数组文件中。

总结说明:

以上三个函数都可以打印对象的值、系统函数值以及数组的内容;

1、 echo 、print、printf可以打印变量内容,但不能显示数组及系统超级变量数组;

2、 print_r 和 var_dump不仅可以打印数组、标量变量,还可以打印对象的内容;

3、 var_dump语句不仅能打印变量、数组内容,还可以显示布尔变量和资源(Resource)的内容;

4、var_export 函数返回关于传递给该函数的变量的结构信息,和 var_dump()函数类似,不同的是其返回的内容是合法的PHP代码。