日期:2014-05-17  浏览次数:20482 次

php生成伪静态
那位老兄有生成php伪静态的代码?让我看看哦。先在此谢谢啦

------解决方案--------------------
这个是ecshop的伪静态生成代码
PHP code

/**
 * 重写 URL 地址
 *
 * @access  public
 * @param   string  $app    执行程序
 * @param   array   $params 参数数组
 * @param   string  $append 附加字串
 * @param   integer $page   页数
 * @return  void
 */
function build_uri($app, $params, $append = '', $page = 0, $size = 0)
{
    static $rewrite = NULL;
    $append = str_replace(':',' ',$append);
    $append = str_replace('/',' ',$append);
    $append = str_replace('?',' ',$append);
    $append = str_replace('?',' ',$append);
    $append = str_replace('“',' ',$append);
    $append = str_replace('”',' ',$append);
    $append = str_replace(':',' ',$append);
    $append = str_replace('#',' ',$append);
    $append = str_replace(',',' ',$append);
    $append = str_replace('=',' ',$append);
    $append = str_replace(')',' ',$append);
    $append = str_replace(')',' ',$append);
    $append = str_replace('(',' ',$append);
    $append = str_replace('(',' ',$append);
    $append = str_replace('!',' ',$append);
    $append = str_replace('\\',' ',$append);
    $append = str_replace('…',' ',$append);
    $append = str_replace('.',' ',$append);
    $append = str_replace('。',' ',$append);
    $append = preg_replace('/(\s+)/', '-', $append);
    //exit;
    if ($rewrite === NULL)
    {
        $rewrite = intval($GLOBALS['_CFG']['rewrite']);
    }

    $args = array('cid'   => 0,
                  'gid'   => 0,
                  'bid'   => 0,
                  'acid'  => 0,
                  'aid'   => 0,
                  'sid'   => 0,
                  'gbid'  => 0,
                  'auid'  => 0,
                  'sort'  => '',
                  'order' => '',
                );

    extract(array_merge($args, $params));

    $uri = '';
    switch ($app)
    {
        case 'category':
            if (empty($cid))
            {
                return false;
            }
            else
            {
                if ($rewrite)
                {
                    $uri = 'category-' . $cid;
                    if (isset($bid))
                    {
                        $uri .= '-b' . $bid;
                    }
                    if (isset($price_min))
                    {
                        $uri .= '-min'.$price_min;
                    }
                    if (isset($price_max))
                    {
                        $uri .= '-max'.$price_max;
                    }
                    if (isset($filter_attr))
                    {
                        $uri .= '-attr' . urlencode($filter_attr);
                    }
                    if (!empty($page))
                    {
                        $uri .= '-' . $page;
                    }
                    if (!empty($sort))
                    {
                        $uri .= '-' . $sort;
                    }
                    if (!empty($order))
                    {
                        $uri .= '-' . $order;
                    }
                }
                else
                {
                    $uri = 'category.php?id=' . $cid;
                    if (!empty($bid))
                    {
                        $uri .= '&brand=' . $bid;
                    }
                    if (isset($price_min))
                    {
                        $uri .= '&price_min=' . $price_min;
                    }
                    if (isset($price_max))
                    {
                        $uri .= '&price_max=' . $price_max;
                    }
                    if (isset($filter_attr))
                    {
                        $uri .='&filter_attr=' . urlencode($filter_attr);
                    }

                    if (!empty($page))
                    {
                        $uri .= '&page=' . $page;
                    }
                    if (!empt