Как использовать echo в php-массиве для возврата в виде строки

Я пытаюсь вернуть массив строк. Я делаю это:

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

и это в функции в конце:

 return $errors; 

и я установил такую ​​ошибку:

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

В принципе, когда я возвращаю свой массив и повторяю его, он дает мне следующий результат:

 Array 

Вам нужно пройти через массив. Существует несколько способов сделать это, при этом мое личное предпочтение заключается в использовании цикла foreach .

Например, это будет отражать каждое сообщение об ошибке в массиве в новой строке:

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

Используйте PHP implode для преобразования вашего массива в строку, которую вы можете эхо. Использование эха в массиве будет отображать только тип данных.

 return implode(' ', $errors); 

Если вы хотите отделить ошибки с разделителем, отличным от пробела, просто замените пробел в первом параметре:

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

Например, если ваш массив ошибок содержал три значения:

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

то ваша строка, если вы использовали ::, выглядела бы так, когда вы запускаете echo на результат:

 Invalid data :: 404 :: Syntax error 

См. Ссылочную ссылку, включенную в другой пример.

Вы не можете отобразить содержимое массива как есть.

Если вы хотите проверить содержимое массива, вы можете использовать print_r () или var_export () с параметром return установленным в True .