Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вывод циклом двумерного ассоциативного массива
 
 автор: Golovastik   (26.11.2010 в 18:01)   письмо автору
 
 

Прошу прощения, скажите как написать вот этот код, только вместо foreach сделать циклом?
Как написать циклами без использования этой конструкции,чтоб вывести весь многомерный массив?
Пробую так, получается бурда немного.

<h1>
<pre>
<?php

$arr 
= array(
'misha' =>array('Петя','Вася','Коля','Динис','Федя','Богдан'),
'pischa' =>array('Салат','Сардельки','Огурчики','Сало','Мясо','буженина'),
'azart' =>array('Игровые автоматы','Развод'),
'santa' =>array('Клаус','Дед Мороз')
);
$arr['misha'][] = 'Nikita Litvinkov';

echo 
$arr['misha'][6].'<br/>';

for(
$i=0$i<count($arr); $i++){
  for(
$j=0$j<count($arr,COUNT_RECURSIVE); $j++){
echo 
$arr['misha'][$j].' ';
echo 
$arr['pischa'][$j].' ';
echo 
$arr['azart'][$j].' ';
echo 
$arr['santa'][$j].' ';
}
echo 
"\n";
}

?>

</pre>
</h1>

  Ответить  
 
 автор: Trianon   (26.11.2010 в 18:11)   письмо автору
 
   для: Golovastik   (26.11.2010 в 18:01)
 

>Пробую так, получается бурда немного.

включите вывод ошибок. error_reporting(E_ALL);

  Ответить  
 
 автор: Golovastik   (26.11.2010 в 18:17)   письмо автору
 
   для: Trianon   (26.11.2010 в 18:11)
 

Вот так, будет выводить, как сделать такое же только чисто циклами фор, не знаю как.

<h1>
<pre>
<?php

$arr 
= array(
'misha' =>array('Петя','Вася','Коля','Динис','Федя','Богдан'),
'pischa' =>array('Салат','Сардельки','Огурчики','Сало','Мясо','буженина'),
'azart' =>array('Игровые автоматы','Развод'),
'santa' =>array('Клаус','Дед Мороз')
);
$arr['misha'][] = 'Nikita Litvinkov';

echo 
$arr['misha'][6].'<br/>';

foreach(
$arr as $k=>$v)
{
    echo 
'<b>'$k .'</b><br>';
    foreach(
$v as $i=>$j)
        {
            echo 
$i .'=>'$j .'<br>';
        }
}

?>

</pre>
</h1>


  Ответить  
 
 автор: Trianon   (26.11.2010 в 18:59)   письмо автору
 
   для: Golovastik   (26.11.2010 в 18:17)
 

А какой смысл в этом ограничении?
можете применить функции reset(), key() и next() , хотя на мой взгляд, без причины это изврат.

  Ответить  
 
 автор: sim5   (26.11.2010 в 19:47)   письмо автору
 
   для: Golovastik   (26.11.2010 в 18:17)
 

Что за колбасня вообще? Во-первых, чем вам не угодил foreach? Во-вторых, по какому принципу $arr['misha'][] = .... и далее echo $arr['misha'][6]? Да вообще все это можно без циклов сделать - print_r().

  Ответить  
 
 автор: Tonik992   (27.11.2010 в 01:36)   письмо автору
 
   для: Golovastik   (26.11.2010 в 18:17)
 

правильно подсказали, используй error_reporting();
И ты сразу заметишь ошибки свои. (выход за пределы массива)
Да и кстате, следовало бы вам разобраться с тем, что вы написали
count($arr,COUNT_RECURSIVE)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования