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]   

> Описание: результат взять в одну переменную
algebra
Отправлено: 02 Сентября, 2011 - 09:36:27
Post Id



Частый гость


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


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




PHP:
скопировать код в буфер обмена
  1. $places = array("1" => $a1, "2" => $a2, "3" => $a3, "4" => $a4, "5" => $a5);
  2. arsort($places);
  3. reset($places);
  4. while ((list($key, $val) = each($places)) and($val!=0) ) {
  5.     echo "$key - $val";
  6. }


хочу весь цикл взять в одну переменную,
как это сделать?, подскажите пожалуйста

(Отредактировано автором: 02 Сентября, 2011 - 09:37:08)

 
 Top
SAD Модератор
Отправлено: 02 Сентября, 2011 - 09:41:31
Post Id



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


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




Ничего не понял
 
 Top
algebra
Отправлено: 02 Сентября, 2011 - 09:46:05
Post Id



Частый гость


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


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




echo "$key - $val" проходит цикл 5 раз, если конечно значение val не равно нулю,
хочу записать в одно поле SQL все эти 5 результатов
 
 Top
SAD Модератор
Отправлено: 02 Сентября, 2011 - 09:50:14
Post Id



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


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




PHP:
скопировать код в буфер обмена
  1. $str = '';
  2. while ((list($key, $val) = each($places)) and($val!=0) ) {
  3.     $str .= "$key - $val";
  4. }
  5.  
  6. echo $str;
 
 Top
EuGen Администратор
Отправлено: 02 Сентября, 2011 - 09:54:53
Post Id


Профессионал


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


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




PHP:
скопировать код в буфер обмена
  1. $a1='test_1';
  2. $a2='test_2';
  3. $a3=0;
  4. $a4='test_4';
  5. $a5=0;
  6. $places = array("1" => $a1, "2" => $a2, "3" => $a3, "4" => $a4, "5" => $a5);
  7. arsort($places);
  8.  
  9. $sResult='';
  10. array_walk(array_filter($places, function($x){return (bool)$x;}), function($value, $key) use (&$sResult){$sResult.=$key.'-'.$value;});
  11. var_dump($sResult);


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
algebra
Отправлено: 02 Сентября, 2011 - 10:54:19
Post Id



Частый гость


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


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




SAD, ваш пример великолепен! Спасибочки!

Евгений, ваш выдает ошибку unexpected T_FUNCTION
 
 Top
EuGen Администратор
Отправлено: 02 Сентября, 2011 - 11:30:40
Post Id


Профессионал


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


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




Да, php 5.3 нужен. У Вас видимо меньше.
Раньше делал через create_function, но оно очень медленное (в php 5.2 и раньше это суть простой eval)


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 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