开启path_info后

#1 soseek

原来用require(SP_PATH."/SpeedPHP.php");

$s=($_GET['s'])?$_GET['s']:'m';

spRun(); // SpeedPHP 3新特性

但是开启path_info后$s失效了

2011-03-02 19:26:26

#2 jake

用path_info后,PHP接收参数的方式会改变的。

所以建议使用spArgs和spUrl来对应接收和生成地址。

2011-03-02 19:38:35

#3 soseek

回复 2 jake


    这个我试过但是错误
require(SP_PATH."/SpeedPHP.php");
$s=($this->spArgs('s'))?$this->spArgs('s'):'m';
spRun(); // SpeedPHP 3新特性
总觉得是我编写错误Q_Q

2011-03-02 20:38:44

#4 jake

因为通常的$this->spArgs()的$this指代的是控制器,但是这个位置是全局位置,不是控制器,所以不能这样用。

在全局位置可以用 spClass('spArgs')->get('s');来获取。
$s=spClass('spArgs')->get('s', 'm'); // 这里的m就是默认值,不需要进行判断。

2011-03-02 20:43:04