Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Немогу понять ошибку почему не выводит из массива значения

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Немогу понять ошибку почему не выводит из массива значения
slmzig
Отправлено: 27 Декабря, 2012 - 11:56:38
Post Id


Новичок


Покинул форум
Сообщений всего: 24
Дата рег-ции: Дек. 2012  


Помог: 0 раз(а)




Немогу понять ошибку почему не выводит из массива значения
PHP:
скопировать код в буфер обмена
  1.     <?PHP
  2.        
  3.     function pushToArray($mail,$user,$pass)
  4.     {
  5.                 global $users;
  6.                 $users[$mail] = array($mail,$user,$pass);
  7.                 return $users;
  8.     }
  9.        
  10.         $users = array();
  11.     $users = pushToArray("tito@gmail.com","tito",1234);
  12.     $users = pushToArray("mum@gmail.com","mum",54754);
  13.     $users = pushToArray("qwe@gmail.com","qwe",654654);
  14.        
  15.     echo $users["tito@gmail.com"][0];
  16.            echo $users["tito@gmail.com"][1];
  17.               echo $users["tito@gmail.com"][2];
  18.                     echo $users["mum@gmail.com"][0];
  19.            echo $users["mum@gmail.com"][1];
  20.               echo $users["mum@gmail.com"][2];
  21.  
  22. echo "<br>";
  23.  
  24. foreach ($users as $key=>$value)
  25. {
  26.         //echo "----$key ----$type--";
  27.        
  28.         for ($i=0;$i<3;$i++)
  29.         {
  30.         echo "-$key-";
  31.         echo "$users[$key][$i]<br>";
  32.         }      
  33. }      
  34.  
  35.     ?>
  36.  

результат

tito@gmail.comtito1234mum@gmail.commum54754
-tito@gmail.com-Array[0]
-tito@gmail.com-Array[1]
-tito@gmail.com-Array[2]
-mum@gmail.com-Array[0]
-mum@gmail.com-Array[1]
-mum@gmail.com-Array[2]
-qwe@gmail.com-Array[0]
-qwe@gmail.com-Array[1]
-qwe@gmail.com-Array[2]


Отредактировано модератором: Мелкий, 27 Декабря, 2012 - 12:13:34
 
 Top
esterio
Отправлено: 27 Декабря, 2012 - 12:19:48
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)





?
 
 Top
avtor.fox
Отправлено: 27 Декабря, 2012 - 12:27:54
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2083
Дата рег-ции: Март 2012  
Откуда: Воронеж


Помог: 50 раз(а)




PHP:
скопировать код в буфер обмена
  1. $users = array();
  2. function pushToArray($mail, $user, $pass){
  3.         global $users;
  4.         $users[$mail] = array($mail, $user, $pass);
  5. }
  6. pushToArray('test@mail.ru', 'test', 'test');
  7. print_r($users);


например

(Отредактировано автором: 27 Декабря, 2012 - 12:28:40)

 
 Top
slmzig
Отправлено: 27 Декабря, 2012 - 12:37:48
Post Id


Новичок


Покинул форум
Сообщений всего: 24
Дата рег-ции: Дек. 2012  


Помог: 0 раз(а)




Понял ошибку нужно было забрать скобки в echo "$users[$key][$i]<br>";

foreach ($users as $key=>$value)
{
echo "$key ";
for ($i=0;$i<3;$i++)
{
echo $users[$key][$i]." "; // вместо echo "$users[$key][$i]<br>";
}
echo "<br>";
}
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB