#1 jake

SpeedPHP框架中,最常用到的函数,可以说就是spUrl了。spUrl是sp框架的URL地址构造函数,下面我们来介绍一下它在各方面的使用方法。

1.普通例子

在程序中:

echo spUrl("main","show");

在Smarty模板中:

<{spUrl c=main a=show}>

输出:

/index.php?c=main&a=show

2.使用传递参数

在程序中:

echo spUrl("guestbook","page", array("gid"=>"3", "myname"=>"jake"));

在Smarty模板中:

<{spUrl c=guestbook a=page gid=3 myname="jake"}>

输出:

/index.php?c=guestbook&a=page&gid=3&myname=jake

3.在二级目录中使用SpeedPHP框架的时候

和在顶级目录使用spUrl一样,无需配置。

如在程序中:

echo spUrl("main","show");

在Smarty模板中:

<{spUrl c=main a=show}>

输出将是:

/sp/index.php?c=main&a=show


4.使用PATH_INFO

PATH_INFO是一种美化网址URL的方法,同时对于搜索引擎较为友好。只要服务器环境支持PATH_INFO,在SpeedPHP框架中使用只需要配置一下即可。

...
        'url' => array(
                'url_path_info' => TRUE, // 是否使用path_info方式的URL
                'url_path_base' => '/index.php', // URL的根目录访问地址
        ),
...
       
'url_path_info' => TRUE即可开启PATH_INFO功能,开启后,除了访问URL变成了index.php/main/index的形式外,程序其他地方并无影响。
这里我们建议开发者在图片,JS,css引用上使用绝对路径,毕竟只有绝对路径才能轻易地保证在PATH_INFO模式和spHtml生成静态后访问图片和JS等的路径正确无误。(绝对路径也就是以/开头的地址)

5.在使用了PATH_INFO的情况

在程序中:

echo spUrl("guestbook","page", array("gid"=>"3", "myname"=>"jake"));

在Smarty模板中:

<{spUrl c=guestbook a=page gid=3 myname="jake"}>

输出:

/index.php/guestbook/page/gid/3/myname/jake



2012-08-04 13:37:06