php помогите с регуляркой

sanich_
На сайте с 24.05.2008
Offline
77
485

Нужно из переданного урла count32=5&count35=3&count37=3&pereschitat.x=73&pereschitat.y=14

получить значения: часть имени переменной и ее значение

32 5

35 3

37 3

т.е должен быть двумерный массив

 $url='count32=5&count35=3&count37=3&pereschitat.x=73&pereschitat.y=14';

preg_match("/count(\d+)=(\d+)/", $url, $regs);
echo count($regs).'<br>';
for($i=1;$i<count($regs);$i++)
{
echo $regs[$i].'<br>';
}

Вот на скорую руку написал, тока неверно работает, находится только первое соответствие

Лучший анализ бэков конкурентов - Yazzle (http://www.yazzle.ru/seo/8945eae37b4e842893f9c46afa70d80e/)
iexpert
На сайте с 01.09.2005
Offline
184
#1

preg_match_all ???

и по моему понадобится квантификатор U

Бойтесь ваших желаний, ибо они могут исполниться
sanich_
На сайте с 24.05.2008
Offline
77
#2
iexpert:
preg_match_all ???
и по моему понадобится квантификатор U

ага, точно, спасибо, разобрался

zhitov
На сайте с 30.01.2005
Offline
219
#3

sanich_, у вас только URL разбирается? Не проще использовать parse_url?

Строительные калькуляторы ( https://www.zhitov.com/ )
dkameleon
На сайте с 09.12.2005
Offline
386
#4
sanich_:
Нужно из переданного урла count32=5&count35=3&count37=3&pereschitat.x=73&pereschitat.y=14

Если вы этот массив формируете сами, то делайте так:

count[32]=5&count[35]=3&count[37]=3&pereschitat.x=73&pereschitat.y=14

нужный массив будет сразу в переменной.

Дизайн интерьера (http://balabukha.com/)
sanich_
На сайте с 24.05.2008
Offline
77
#5
zhitov:
sanich_, у вас только URL разбирается? Не проще использовать parse_url?

parse_url не разбирает по параметрам и значениям.

Эта функция возвращает ассоциативный массив, возвращающий любые имеющиеся компоненты URL. Это могут быть:

scheme - например, http

host

port

user

pass

path

query- запрос, после знака вопроса ?

fragment -фрагмент, после знака хэша #

В любом случае, спасибо, preg_match_all помогло

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий