如何在PHP的array_reverse()函数中使用echo

时间:2019-01-06 19:58:30

标签: php

我不是使用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一起使用?

2 个答案:

答案 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本机函数:

print_r

var_export

var_dump