PHP模拟实现url rewrite

转载自: http://blog.csdn.net/zuiaituantuan/article/details/5907154

<?php
function mod_rewrite() {
    if (isset ( $_SERVER [' PATH_INFO '] )) {
        $url = substr ( $_SERVER [' PATH_INFO '], 1 );
        $url = explode ( ' / ', $url );
        foreach ( $url as $key => $value ) {
            if ($key % 2 != 1) {
                if ($value != '')
                    $_GET [$value] = $url [$key + 1];
                $querystring [] = $value . ' = ' . $url [$key + 1];
            }
        }
        $_SERVER [' QUERY_STRING '] = implode ( " & ", $querystring );
        $_SERVER [' PHP_SELF '] = substr ( $_SERVER [' PHP_SELF '], 0, strpos ( $_SERVER [' PHP_SELF '], ' .php ' ) + 4 );
        $_SERVER [' REQUEST_URI '] = $_SERVER [' PHP_SELF '] . ' ? ' . $_SERVER [' QUERY_STRING '];
    }
}

mod_rewrite ();

// url: http : // www.test.com/test.php/a/1/b/2/c/3
echo ' <pre> ';
echo " GET数组如下:<br /> ";
print_r ( $_GET );
/*
Array
(
        [a] =>
        1
        =>
        2
        [c] =>
        3
)
*/
?>

 

参考文档:

http://blog.csdn.net/zuiaituantuan/article/details/5907154

posted on 2012-05-28 00:25  DavidYanXW  阅读(194)  评论(0)    收藏  举报