我正在尝试返回一个字符串数组。我这样做:
$errors[] = toolbarCheckCreds($_COOKIE['uname'], $_COOKIE['pword'], $_COOKIE['rememberMe']);
echo $errors[0];
这在最后的函数中:
return $errors;
我设置了这样一个错误:
$errors[] = "error goes here!";
基本上,当我返回数组并回显它时,它会给我以下输出:
Array
使用PHP内爆将数组转换为可以回显的字符串。在数组上使用echo只会显示数据类型。
return implode(' ', $errors);
如果你想用空格以外的分隔符来分隔错误,只需替换第一个参数中的空格:
return implode(' :: ', $errors);
例如,如果您的错误数组包含三个值:
[ "Invalid data" , "404" , "Syntax error" ]
如果您使用::,那么当您对结果:运行echo
时,您的字符串将如下所示
Invalid data :: 404 :: Syntax error
请参阅我提供的参考链接以获取另一个示例。
您需要循环遍历您的数组。有多种方法可以做到这一点,我个人更喜欢使用foreach循环。
例如,这将在新的行上回显阵列中的每个错误消息:
foreach ($errors as $error)
{
echo "<br />Error: " . $error;
}
$list = array( 'one Thing', 'Two Things', 'The Things' );
echo implode( ", ", $list );
结果一件事,两件事,三件事
轻松愉快,希望这能帮助我知道我迟到了,但可能对其他人有用?
不能按原样回显数组的内容。
如果要检查数组的内容,可以使用print_r()或var_export(),并将return
参数设置为True
。