Вывод (эхо/печать) все из массива PHP
Можно ли эхо или распечатать все содержимое массива без указания какой части массива?
Сценарий: я пытаюсь отменить все:
while($row = mysql_fetch_array($result)){
echo $row['id'];
}
Без указания "id" и вместо этого выводить полное содержимое массива.
Ответы
Ответ 1
Если вы хотите отформатировать вывод самостоятельно, просто добавьте еще один цикл (foreach) для повторения содержимого текущей строки:
while ($row = mysql_fetch_array($result)) {
foreach ($row as $columnName => $columnData) {
echo 'Column name: ' . $columnName . ' Column data: ' . $columnData . '<br />';
}
}
Или, если вы не заботитесь о форматировании, используйте функцию print_r, рекомендованную в предыдущих ответах.
while ($row = mysql_fetch_array($result)) {
echo '<pre>';
print_r ($row);
echo '</pre>';
}
print_r() печатает только ключи и значения массива, в отличие от var_dump(), который также печатает типы данных в массиве, т.е. String, int, double и т.д. Если вы заботитесь о типах данных - используйте var_dump() над print_r().
Ответ 2
Для приятных и читаемых результатов используйте это:
function printVar($var) {
echo '<pre>';
var_dump($var);
echo '</pre>';
}
Вышеуказанная функция сохранит исходное форматирование, сделав его (более) доступным для чтения в веб-браузере.
Ответ 3
var_dump()
может сделать это.
Эта функция отображает структурированную информацию об одном или нескольких выражениях, которые включают его тип и значение. Массивы и объекты рекурсивно исследуются со значениями, отступающими для отображения структуры.
http://php.net/manual/en/function.var-dump.php
Ответ 4
Я думаю, что вы ищете print_r, который выведет массив в виде текста. Однако вы не можете управлять форматированием, но больше для отладки. Если вам требуется крутое форматирование, вам нужно будет сделать это вручную.
Ответ 5
Вы можете использовать print_r
для получения информации, доступной для человека.
См. http://www.php.net/print_r
Ответ 6
Это небольшая функция, которую я использую все время, когда она удобна, если вы отлаживаете массивы. Это почти то же самое, что и Даррил и Карим. Я просто добавил заголовок параметра, поэтому у вас есть какая-то информация об отладке, как какой массив вы печатаете. он также проверяет, снабжен ли он допустимым массивом и позволяет узнать, не сделали ли вы.
function print_array($title,$array){
if(is_array($array)){
echo $title."<br/>".
"||---------------------------------||<br/>".
"<pre>";
print_r($array);
echo "</pre>".
"END ".$title."<br/>".
"||---------------------------------||<br/>";
}else{
echo $title." is not an array.";
}
}
Основное использование:
//your array
$array = array('cat','dog','bird','mouse','fish','gerbil');
//usage
print_array("PETS", $array);
Результаты:
PETS
||---------------------------------||
Array
(
[0] => cat
[1] => dog
[2] => bird
[3] => mouse
[4] => fish
[5] => gerbil
)
END PETS
||---------------------------------||
Ответ 7
Как и у karim's, но с print_r, который имеет очень небольшой результат, и я нахожу, как правило, все, что вам нужно:
function PrintR($var) {
echo '<pre>';
print_r($var);
echo '</pre>';
}
Ответ 8
Вы можете использовать print_r для получения информации, доступной для человека.
Но для отображения в тексте мы добавляем "echo", "
echo '';
print_r ($ строка);
Ответ 9
//@parram $data-array,$d-if true then die by default it is false
//@author Your name
function p($data,$d = false){
echo "<pre>";
print_r($data);
echo "</pre>";
if($d == TRUE){
die();
}
} // END OF FUNCTION
Используйте эту функцию каждый раз, когда вам понадобится строка или массив, она будет просто отличной.
Есть 2 патаметра
1. $data - может быть Array или String
2. $d - По умолчанию это FALSE, но если вы установите значение true, то он выполнит функцию die()
В вашем случае вы можете использовать таким образом....
while($row = mysql_fetch_array($result)){
p($row); // Use this function if you use above function in your page.
}