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
Форумы портала PHP.SU :: Версия для печати :: Поместить текст в массив
Форумы портала PHP.SU » » Вопросы новичков » Поместить текст в массив

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

1. BespredeL - 23 Ноября, 2012 - 07:34:47 - перейти к сообщению
Всем привет.
Ребят, подскажите пожалуйста как занести в массив вот такую строчку:
90546382 Фамилия Имя Отчество Тут тоже текст разной длинны 8794563549 23819603546372854 31342577 Текст01 04.11.2012

, только что бы получилось:
1. 90546382
2. Фамилия Имя Отчество
3. Тут тоже текст разной длинны
4. 8794563549
5. 23819603546372854
6. 31342577
7. Текст01
8. 04.11.2012

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

Т.е работа скрипта заключается в том что пользователь заходит на страницу, вставляет данные в textarea и нажимает добавить. Скрипт разбивает данные построчно, и должен еще эту строку преобразовать в массив что бы записать в базу для дальнейшего вывода из нее.
2. avtor.fox - 23 Ноября, 2012 - 07:50:15 - перейти к сообщению
BespredeL как вариант говнокода -

Разбиваем "это" через explode -
CODE (text):
скопировать код в буфер обмена
  1. Number = $new[0]
  2. Full Name = $new[1],$new[2],$new[3]
  3. ---
  4. а всё что не попало в определённые "ячейки" по определению попадёт в текст
  5. ---
  6. $text01 = $new[count($new) - 2];
  7. $date = $new[count($new) - 1];


Но говнокод не с моей стороны, а с Вашей.
3. BespredeL - 23 Ноября, 2012 - 08:03:21 - перейти к сообщению
avtor.fox пишет:
BespredeL как вариант говнокода -

Разбиваем "это" через explode -
CODE (text):
скопировать код в буфер обмена
  1. Number = $new[0]
  2. Full Name = $new[1],$new[2],$new[3]
  3. ---
  4. а всё что не попало в определённые "ячейки" по определению попадёт в текст
  5. ---
  6. $text01 = $new[count($new) - 2];
  7. $date = $new[count($new) - 1];


Но говнокод не с моей стороны, а с Вашей.


а если не говнокодом делать? Можно что то более нормальное сделать. просто у меня эти данные через explode разделяются построчно. вообщем вот код:

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3.                 $text = scan_output($_POST['text']);
  4.  
  5.                 $str = explode("\n", $text);
  6.  
  7.                         foreach($str as $key=>$val){
  8.                        
  9.                                 echo $val.'<br />';
  10.  
  11.                         }
  12.  
  13.                 }
  14.                 else $err='Ошибка';
  15.  
  16.  

 

Powered by ExBB FM 1.0 RC1