关于数组:php var_dump()vs print_r()

php var_dump() vs print_r()

var_dump()print_r()在将数组吐为字符串方面有什么区别?


var_dump函数显示结构化信息/关于变量的表达式包括其类型和值。翼是explored递归与价值观的indented到节目的结构。它也普遍表现出这一阵列值和面向属性的参考文献。 </P >

print_r()ABOUT A可变信息显示在一个通' s以人类可读的。数组的值将是在一个presented格式是交往的钥匙和要素。类似的notation是用于对象。 </P >

实例: </P >

1
$obj = (object) array('qualitypoint', 'technologies', 'Pakistan');

var_dump($obj)将显示下面的输出在屏幕上。 </P >

1
2
3
4
5
object(stdClass)#1 (3) {
[0]=> string(12)"qualitypoint"
 [1]=> string(12)"technologies"
 [2]=> string(5)"Pakistan"
}

print_r($obj),将显示下面的输出在屏幕上。 </P >

1
2
3
4
5
stdClass Object (
 [0] => qualitypoint
 [1] => technologies
 [2] => Pakistan
)

更多的信息 </P >

  • _ var dump
  • 打印_ R


generally,print_r( )产出更多的是nicer,简明和easier读,也就是更多的人类可读的,但不能显示的数据类型。 </P >

你可以用print_r()商店也变成一个可变的输出: </P >

1
$output = print_r($array, true);

var_dump()不能做的。然而var_dump()可以显示的数据类型。 </P >


var_dump()会显示你型的东西是好的为什么在它。 </P >

所以你要给=> (string)"var"example is在这里。 </P >

是的print_r()将输出内容。 </P >

*输出= > "var"example is在这里。 </P >


如果你是asking当你应该使用什么的,我generally使用print_r()方法displaying值和var_dump()当有问题的方法与变量的类型。 </P >


var_dump显示结构化信息关于面向/可变。这包括的类型和值。print_r状翼是recursed通和indented。。。。。。。 </P >

print_r显示人类可读的信息?A值与格式的钥匙递呈和翼的元素和对象。 </P >

"最重要的事情的时间是var_dump会产出型AS AS值的话,而print_r并不。 </P >


重大的差异之间的关系var_dumpprint_r </P >

两函数的dumps信息?可变,但var_dump多参数,这将是dumped,在AS print_r能带双参数从这第一个参数是可变的,你想要的转储和第二是一个布尔值。 </P >

var_dump不返回任何值,它可以只读式/打印在打印的值为_ R可以返回变量的信息,如果我们的第二个参数集print_r到真实的。在returned值print_r将在字符串的格式。 </P >

信息是通过印刷print_r多更多的可读的格式,为var_dump原印本的价值观。 </P >

print_r函数可以用在许多contexts在AS var_dump可以用在debugging用途主要由于它不能返回值。 </P >


I’d aditionally recommend将对产出性_ var dump()或printr变成一个预标记时,输出到一个浏览器。 </P >

1
2
3
print"[cc lang="php"]";
print_r($dataset);
print"

"; < /编码/预> > <

将提供一个更可读的结果。 </P >


var_dump($var)交往的深入的细节,以提供额外的竞争 </P >

  • 数据类型的值(包括《descendant元素)
  • 数的元素在一个可变的
  • length的值

var_dump():。-

  • 此函数显示一个或多个表达式的结构化信息,其中包括其类型和值。数组和对象以递归方式进行探索,值缩进以显示结构。
  • 此函数显示变量中的元素数。
  • 此函数显示变量的长度。
  • 无法返回值,只能打印该值。
  • 用于调试。
  • 示例:

    1
    2
    3
    4
    <?php
    $a = array(1, 2, array("a","b","c"));
    var_dump($a);
    ?>

    输出:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
       array(3) {
      [0]=>
      int(1)
      [1]=>
      int(2)
      [2]=>
      array(3) {
        [0]=>
        string(1)"a"
        [1]=>
        string(1)"b"
        [2]=>
        string(1)"c"
      }
    }

    打印_r():-

  • 打印有关变量的人类可读信息。
  • 不将变量中的元素数显示为var_dump()。
  • 不将变量中变量的长度显示为var_dump()。
  • 如果在printf_()中将第二个参数设置为true,则返回该值。
  • 示例:

    1
    2
    3
    4
    5
    [cc lang="php"]
    <?php
    $a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z'));
    print_r ($a);
    ?>

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <P>输出:</P>[cc lang="php"][cc lang="php"]
    Array
    (
        [a] => apple
        [b] => banana
        [c] => Array
            (
                [0] => x
                [1] => y
                [2] => z
            )
    )

    1
    <hr>   <P>   与大翼,打印_ R可以显示更多的信息远比是有用的。你可以将它这样的表现,2000年的第一个字或多但是你需要的。   </P >   [cc lang="php"]  echo"[cc lang="php"]" . substr(print_r($dataset, 1), 0, 2000) ."

    "; < /编码/预> > <


    我们可以通过var_dump传递多个参数像:

    1
    var_dump("array1",$array1,"array2",$array2);


    打印_(R)和_ var dump(阵列)是debugging函数用于PHP的方法debugging用途。打印_ R()函数时返回数组的键和其成员作为阵列([重点] = value)而_ var dump()函数时返回数组列表与ITS的钥匙与阵列的数据类型和长度为好e.g Array(阵列_ length){ [ 0 ](1)=字符串"A"}。 </P >