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

Форум PHP

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

 

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

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

тема: сфорировать многомерный массив из переменного числа входных данных
 
 автор: larush1   (25.08.2010 в 13:40)   письмо автору
 
 

Привет !

Столкнулся с задачей и уже не знаю как дальше ее решать:

Есть шаблонная строка "ехал %ИМЯ% темным %МЕСТО% за каким-то %ПРЕДМЕТ%" (строки разной длины и с разным кол-вом переменных,эту для примера придумал)

Случай 1
к этому шаблону от пользователя пришли такие данные
МЕСТО- лесом
ИМЯ- 2110
ПРЕДМЕТ - интересом
на выходе я получил то что хотел ехал 2110 темным лесом за каким-то интересом Это я сделал, а вот следующее никак

Случай 2
ехал %ИМЯ% темным %МЕСТО% за каким-то %ПРЕДМЕТ%"
стоял дядя в %МЕСТО%
Коля имел %ПРЕДМЕТ%
МЕСТО- лесом
ИМЯ- 2110-2112
ПРЕДМЕТ -5-6

надо бы получить:
ехал 2110 темным лесом за каким-то 5
ехал 2111 темным лесом за каким-то 5
ехал 2112 темным лесом за каким-то 5
ехал 2110 темным лесом за каким-то 6
ехал 2111 темным лесом за каким-то 6
ехал 2112 темным лесом за каким-то 6

стоял дядя в лесом

Коля имел 5
Коля имел 6


Пробовал заполнять многомерный массив, но запутался с определением кол-ва строк, ведь "диапазонный" параметр может прийти любым по счету . Кто-то подсказал рекурсию, я мало ее юзал, попробовал- не получается.

Спасибо !

  Ответить  
 
 автор: Valick   (25.08.2010 в 15:13)   письмо автору
 
   для: larush1   (25.08.2010 в 13:40)
 

боюсь даже представить для чего все это...
но уж точно не литературный кружок
я уже получал "жёлтую карточку" за "помощь" спамеру, но там хотя бы задача была интересная

  Ответить  
 
 автор: larush1   (25.08.2010 в 15:16)   письмо автору
 
   для: Valick   (25.08.2010 в 15:13)
 

если интересно, то нате вам реальный шаблон:-)

#примечания, описания и т.д.
#Диапазон %sac%
#zone%rz%
#LAC%lac%
#####################
ZEPC:TYPE=SA,NAME=ORL%sac%,NO=%sac%:LAC=%lac%,MCC=250,MNC=01,SAC=%sac%,::CLN=79103092030,TON=INT,NPI=ISDN,PRES=R,INN=A:;
ZEPF:SA=%sac%,TYPE=SA::LAC=%lac%,MCC=250,MNC=01:;
ZEPR:TYPE=SA,NAME=ORL%sac%:RZ=%rz%,;

  Ответить  
 
 автор: Valick   (25.08.2010 в 15:22)   письмо автору
 
   для: larush1   (25.08.2010 в 15:16)
 

диапазонный параметр Вам прийдется преобразовывать
я так понимаю может прийти массив с двумя значениями
5, 12-15
и вам нужно получить массив пяти значений
5,12,13,14,15
так?

  Ответить  
 
 автор: larush1   (25.08.2010 в 15:24)   письмо автору
 
   для: Valick   (25.08.2010 в 15:22)
 

идеальный вариант- в диапазоне учитывать и тире и запятые... Ну я разберусь, сформирую массив, а вот как дальше делать, фиг его знает. Массив-матрицу сформировать не получается, без конца сканировать записи в массиве на предмет есть-ли там такой параметр и нужно-ли его размножать.. чет не красиво...

В дополнение к ранее описанному. Есть текстовый файл- шаблон

#Диапазон %sac%
#zone%rz%
#LAC%lac%
Эти вещи я нахожу и предъявляю пользователю в качестве переменных для заполнения, а когда он их заполнить и отправит, то работаю с шаблоном команд из того-же файла и со значениями, которые прислал пользователь через форму.

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

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