如何在php数组中使用echo作为字符串返回

时间:2012-04-07 03:19:48

标签: php arrays

我正在尝试返回一个字符串数组。我这样做:

$errors[] = toolbarCheckCreds($_COOKIE['uname'], $_COOKIE['pword'], $_COOKIE['rememberMe']);
    echo $errors[0];

这在最后的函数中:

return $errors;

我设置了这样的错误:

$errors[] = "error goes here!";

基本上,当我返回我的数组并回显它时,它会给我以下输出:

Array

4 个答案:

答案 0 :(得分:5)

你需要遍历你的数组。有多种方法可以做到这一点,我个人喜欢使用foreach循环。

例如,这将在新行上回显数组中的每条错误消息:

foreach ($errors as $error)
{
    echo "<br />Error: " . $error;
}

答案 1 :(得分:3)

使用PHP implode将数组转换为可以回显的字符串。在数组上使用echo只会显示数据类型。

return implode(' ', $errors);

如果要使用空格以外的分隔符分隔错误,只需替换第一个参数中的空格:

return implode(' :: ', $errors);

例如,如果您的errors数组包含三个值:

[ "Invalid data" , "404" , "Syntax error" ]

那么你的字符串,如果你使用了::,当你在结果上运行echo时,你的字符串会是这样的:

Invalid data :: 404 :: Syntax error

请参阅我在其他示例中包含的参考链接。

答案 2 :(得分:1)

您无法按原样回显数组的内容。

如果您想查看数组的内容,可以使用print_r()var_export()return参数设置为True

答案 3 :(得分:0)

$ list = array('一物','两物','物');
echo implode(“,”,$ list);

结果 一件事,两件事,三件事

轻轻松松,希望它可以帮助我知道我迟到了,但也许对其他人有用吗?