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]   

> Описание: Нужно склить несколько значений ассоциотивного массива в одно
stranger140569
Отправлено: 05 Декабря, 2010 - 14:38:23
Post Id


Новичок


Покинул форум
Сообщений всего: 9
Дата рег-ции: Дек. 2010  
Откуда: Россия


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




Доброе время суток! Я только недавно начал изучать PHP, и столкнулся с токой проблемой...
У меня есть массив типа такого:
Спойлер (Отобразить)

Mне нужно сделать новый массив, примерно такой же как этот, только $userID[ ]['surname']
нужно объеденить с $userID[]['first_name'] и $userID[]['middlename']. Я думаю, что можно было
бы написать примерно следующее:
PHP:
скопировать код в буфер обмена
  1.  
  2.        for($i=0; $i<=count($userID); $i++)
  3.        {
  4.            foreach(Здесь я абсолютно не знаю, что писать...)
  5.             {
  6.                 // Здесь склеиваем все в одно значение.
  7.             }
  8.        {
  9.  


P. S. Заранее благодарен за любую помощь.


-----
Умение ценить опыт старших прямо пропорционально количеству изобретенных велосипедов.
 
 Top
Ch_chov
Отправлено: 05 Декабря, 2010 - 15:58:11
Post Id



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


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


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




 
 Top
stranger140569
Отправлено: 05 Декабря, 2010 - 19:15:06
Post Id


Новичок


Покинул форум
Сообщений всего: 9
Дата рег-ции: Дек. 2010  
Откуда: Россия


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




Ch_chov пишет:
#$userID = array_map('implode', $userID, array(' '));


Попробовал у себя на Denwere... Вот тестовый код.

Спойлер (Отобразить)


И вот что он мне выводит в браузер:

Array
(
[0] => Морозов Александр Георгиевич
[1] => БарановИгнатийИгоревич
[2] => СеменовСеменСеменыч
[3] => ЧебурашкинВасилийАндреевич
)

В чем может быть проблема?


-----
Умение ценить опыт старших прямо пропорционально количеству изобретенных велосипедов.
 
 Top
Ch_chov
Отправлено: 05 Декабря, 2010 - 19:51:00
Post Id



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


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


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




В последнем параметре нужно указать столько пробелов, сколько элементов в массиве:
PHP:
скопировать код в буфер обмена
  1. $userID = array_map('implode', $userID, array(' ', ' ', ' ', ' '));


Если кол-во элементов в массиве не известно, то проще все таки использовать цикл:
PHP:
скопировать код в буфер обмена
  1.  foreach($userID AS $k => $v) {
  2.     $userID[$k] = implode(' ', $v);
  3.   }
 
 Top
JustUserR
Отправлено: 06 Декабря, 2010 - 00:17:42
Post Id



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


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


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




stranger140569 пишет:
В чем может быть проблема?
Используемое в приведенной вами PHP-программе значения ассосциативного массива в действительности представляют двухмерную структуру вложенности элементов - по этой причине процесс последовательсного вывода элементов первого уровня в виде строковых элементов обеспечивает автоматическую интерполяцию вложенного уровня без включения требуемых разделителей


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB