PHP Manual
Prev |  | Next

# print_r

(PHP 4, PHP 5)

print_r -- Prints human-readable information about a variable

## Description

bool print_r ( mixed expression [, bool return] )

> Note: The return parameter was added in PHP 4.3.0

print_r() displays information about a variable in a way that's readable by humans. 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. print_r(), var_dump() and var_export() will also show protected and private properties of objects with PHP 5.

Remember that print_r() will move the array pointer to the end. Use reset() to bring it back to beginning.

`<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>

If you would like to capture the output of print_r(), use the return parameter. If this parameter is set to `TRUE`, print_r() will return its output, instead of printing it (which it does by default).

> Note: This function internally uses the output buffering with this parameter so it can not be used inside ob_start() callback function.

Example 1. 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 ?>`

> Note: If you need to capture the output of print_r() with a version of PHP prior to 4.3.0, use the output-control functions.

> Note: 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.

See also ob_start(), var_dump() and var_export().

Prev | Home | Next
isset | Up | serialize