Prints human-readable information about a variable

isset
serialize
Variable handling Functions
PHP Manual

# print_r

(PHP 4, PHP 5)

print_r — Prints human-readable information about a variable

### Description

mixed print_r ( mixed `$expression` [, bool `$return` = false ] )

print_r() displays information about a variable in a way that's readable by humans.

print_r(), var_dump() and var_export() will also show protected and private properties of objects with PHP 5. Static class members will not be shown.

### Parameters

`expression`

  The expression to be printed.

`return`

  If you would like to capture the output of print_r(), use the `return` parameter. When this parameter is set to `TRUE`, print_r() will return the information rather than print it.

### Return Values

If given a string, integer or float, the value itself will be printed. If given an array, values will be presented in a format that shows keys and elements. Similar notation is used for objects.

When the `return` parameter is `TRUE`, this function will return a string. Otherwise, the return value is `TRUE`.

### Notes

> Note:

> When the `return` parameter is used, this function uses internal output buffering so it cannot be used inside an ob_start() callback function.

### Changelog

Version | Description
--- | ---
4.3.0 | The `return` parameter was added. If you need to capture the output of print_r() with an older version of PHP prior, use the output-control functions.
4.0.4 | Prior to PHP 4.0.4, print_r() will continue forever if given an array or object that contains a direct or indirect reference to itself. An example is print_r($GLOBALS) because $GLOBALS is itself a global variable that contains a reference to itself.

### Examples

Example #1 print_r() example

`<pre>
<?php
$a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z'));
print_r ($a);
?>
</pre>`

The above example will output:

    <pre>
    Array
    (
        [a] => apple
        [b] => banana
        [c] => Array
            (
                [0] => x
                [1] => y
                [2] => z
            )
    )
    </pre>

Example #2 `return` parameter example

`<?php
$b = array ('m' => 'monkey', 'foo' => 'bar', 'x' => array ('x', 'y', 'z'));
$results = print_r($b, true); // $results now contains output from print_r
?>`

### See Also

- ob_start() - Turn on output buffering
- var_dump() - Dumps information about a variable
- var_export() - Outputs or returns a parsable string representation of a variable

isset
serialize
Variable handling Functions
PHP Manual