var_dump()和print_r()在输出字符串数组方面有什么区别?


当前回答

var_dump和print_r之间存在显著差异

这两个函数都转储关于变量的信息,但var_dump将被转储的多个参数,其中print_r可以取两个参数,其中第一个参数是您想要转储的变量,第二个参数是一个布尔值。

Var_dump不能返回任何值,它只能转储/打印值,而当我们将print_r的第二个参数设置为true时,print_r可以返回变量信息。print_r的返回值将是字符串格式。

print_r打印的信息更具有可读的格式,而var_dump则打印原始值。

Print_r函数可以在许多上下文中使用,其中var_dump可以主要用于调试目的,因为它不能返回值。

其他回答

Var_dump()将向您显示对象的类型以及其中的内容。

你会得到=> (string)示例如下。

Print_r()只输出内容。

示例如下:

Var_dump ($var)通过提供

值的数据类型(包括后代元素) 变量中的元素数 值的长度

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

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

Var_dump显示关于对象/变量的结构化信息。这包括类型和值。像print_r一样,数组是通过递归和缩进的。

Print_r显示关于值的人类可读信息,其格式显示数组和对象的键和元素。

需要注意的最重要的事情是var_dump将输出类型和值,而print_r则不会。

对于大型数组,print_r显示的信息可能远远超出有用的范围。您可以像这样截断它,显示前2000个字符或任何您需要的字符。

  echo "<pre>" . substr(print_r($dataset, 1), 0, 2000) . "</pre>";