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


当前回答

Var_dump ($var)通过提供

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

其他回答

如果您问什么时候应该使用什么,我通常使用print_r()来显示值,使用var_dump()来处理变量类型的问题。

print_r()和var_dump()是PHP中用于调试目的的数组调试函数。print_r()函数返回数组键及其成员为array ([key] = value),而var_dump()函数返回数组列表及其数据类型和长度的数组键,例如array (array_length){[0] = string(1)'a'}。

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函数显示关于变量/表达式的结构化信息,包括其类型和值。数组用缩进的值递归地探索以显示结构。它还显示了哪些数组值和对象属性是引用。

print_r()以人类可读的方式显示关于变量的信息。数组值将以显示键和元素的格式显示。类似的符号用于对象。

例子:

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

Var_dump ($obj)将在屏幕上显示以下输出。

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

并且,print_r($obj)将在屏幕上显示下面的输出。

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

更多信息

var_dump print_r

Var_dump ($var)通过提供

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