Make a router like zend

Posted by Vahan on Stack Overflow See other posts from Stack Overflow or by Vahan
Published on 2012-03-29T22:08:51Z Indexed on 2012/03/29 23:29 UTC
Read the original article Hit count: 140

Filed under:
|
|

I have a url http://*.com/branch/module/view/id/1/cat/2/etc/3.

It becomes.

array
(
  'module'=>'branch',
  'controller'=>'module',
  'action'=>'view'
);

next I need to get the params. Ihave this array.

/*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

And i wanna convert it to this one: array ( 'id'=>1, 'cat'=>2, 'etc'=>3, );

How i can do this using php function. I know I can do using for or foreach, but I think php has such function , but i cant find it :(. Thank you.

  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;
    }

}

This works normaly. If anybody has better login for this please help. Thank you again.

© Stack Overflow or respective owner

Related posts about php

Related posts about php5