У меня есть URL http://*.com/branch/module/view/id/1/cat/2/etc/3.
Это становится.
array
(
'module'=>'branch',
'controller'=>'module',
'action'=>'view'
);
далее мне нужно получить параметры.У меня есть этот массив.
/*function getNextSegments($n,$segments) {
return array_slice ( $q = $this->segments, $n + 1 );
}
$params = getNextSegments(3);
*/
array ( 0 => 'id', 1 => '1', 2 => 'cat', 3 => '2', 4 => 'etc', 5 => '3' );//params
И я хочу преобразовать его в этот: массив ('id' => 1, 'cat' => 2, 'etc' => 3,);
Как я могу сделать это, используя функцию php.Я знаю, что могу использовать for или foreach, но я думаю, что php имеет такую функцию, но я не могу ее найти :(. Спасибо.
class A {
protected function combine($params) {
$count = count ( $params );
$returnArray = array ();
for($i = 0; $i < $count; $i += 2) {
$g = $i % 2;
if ($g == 0 or $g > 0) {
if (isset ( $params [$i] ) and isset ( $params [$i + 1] ))
$returnArray [$params [$i]] = $params [$i + 1];
}
}
return $returnArray;
}
}
Это работает нормально. Если у кого-то есть лучшая логика для этого, пожалуйстапомогите. Еще раз спасибо.