Saturday, November 21, 2009

print_r() Versus var_dump()

PHP is having various functions for debugging a variable. Seeing values stored in an array or in any other object is important for doing any troubleshooting in a code.

Let us see some of them such as var_dump(), print_r() and var_export().

The var_dump function displays structured information about variables/expressions including its type and value. Arrays are explored recursively with values indented to show structure.

print_r() displays information about a variable in a way that's readable by humans. array values will be presented in a format that shows keys and elements. Similar notation is used for objects.

Refer the below sample array.

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

var_dump($obj) will display below output in the screen.

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

And, print_r($obj) will display below output in the screen.

stdClass Object ( [0] => qualitypoint [1] => technologies [2] => India )

And it seems var_dump($someobject); shows only public properties , but
print_r($someobject) shows all properties (explicitly identifying protected/private properties)

More Articles...

No comments:

Search This Blog