我不是使用print_r的忠实拥护者,我更喜欢在可能的情况下一直使用echo,这样我如何在PHP的array_reverse()函数中使用echo
例如,这就是大多数情况下文档始终在线使用print_r的样子
<?php
$a=array("a"=>"Volvo","b"=>"BMW","c"=>"Toyota");
print_r(array_reverse($a));
?>
在此示例中,我尝试使用echo,但不适用于echo。
<?php
$a=array("a"=>"Volvo","b"=>"BMW","c"=>"Toyota");
echo array_reverse($a);
?>
那么我如何使它与echo一起使用?
答案 0 :(得分:1)
简短的回答,不能。您可以使用implode函数将所有数组元素连接到字符串中,然后将其回显。
<?php
$a=array("a"=>"Volvo","b"=>"BMW","c"=>"Toyota");
$comma_separated = implode(", ", array_reverse($a));
echo $comma_separated;
?>
我用逗号分隔了每个数组元素。
或者,要对结果进行更多控制,您可以简单地使用foreach
遍历数组,您可以在此处了解如何执行此操作:How to echo an array in PHP?
答案 1 :(得分:1)
您不能将数组传递给echo
;您必须遍历它并回显键和/或值。
对于单级关联数组(如示例中的数组),可以这样完成:
<?php
$a=array("a"=>"Volvo","b"=>"BMW","c"=>"Toyota");
foreach( array_reverse( $a ) as $key => $value ) {
echo "$key: $value\n";
}
输出:
c: Toyota
b: BMW
a: Volvo
您可以调整上面的代码以根据需要格式化输出。
如果数组包含其他(嵌套的)数组或对象,那当然是行不通的。
但是,如果您需要出于调试的目的,我建议坚持使用可用于该特定目的的PHP本机函数: