📜  php print_r - PHP (1)

📅  最后修改于: 2023-12-03 15:18:20.834000             🧑  作者: Mango

PHP中的print_r函数

print_r()函数是PHP的一种调试工具,它用于打印变量的相关信息,包括类型、值等。它可以很方便的打印数组、对象等复杂类型的变量。

语法
print_r ( mixed $expression [, bool $return = false ] ) : mixed

参数:

  • mixed $expression: 打印的变量。
  • bool $return(可选):默认是false,如果设置为true,则会返回打印内容,而不是输出到屏幕上。

返回值:

  • 如果$return为true,则返回打印的内容,否则返回bool类型的true。
例子

打印数组:

<?php
$array = array('a', 'b', 'c');
print_r($array);
?>

输出:

Array
(
    [0] => a
    [1] => b
    [2] => c
)

打印对象:

<?php
class MyClass {
    public $public = 'Public';
    protected $protected = 'Protected';
    private $private = 'Private';

    function printHello() {
        echo $this->public;
        echo $this->protected;
        echo $this->private;
    }
}

$obj = new MyClass();
print_r($obj);
?>

输出:

MyClass Object
(
    [public] => Public
    [protected:protected] => Protected
    [private:MyClass:private] => Private
)
注意事项
  • 如果打印的变量是一个对象,那么它会打印对象中的所有属性,包括public、protected、private类型的属性。但是,如果属性是private类型的,则前面会加上类名。
  • print_r()函数只是用于调试,如果要生产环境中使用,需要注意安全问题,因为它会打印包括敏感信息在内的所有变量信息。
  • 如果打印的数组过于复杂,输出到屏幕上可能会导致页面卡顿,这时可以将$return参数设置为true,把打印信息作为返回值输出到页面上。