亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

yii2 - (僅php層)YAF如何相容YII的【駝峰action變成減號】的url路由規(guī)則
世界只因有你
世界只因有你 2017-05-19 10:08:38
0
1
787

背景描述:
1.在yii中,有以下Controller

class PayController extends Controller
{
    public function actionIosCallback()
    {
        echo 'hello yii';
    }
}
訪問www.XXX.com/pay/ios-callback,則頁面顯示hello yii

2.在yaf中,有以下Controller

class PayController extends Yaf_Controller_Abstract{
    public function actionIosCallback()
    {
        echo 'hello yaf';
    }
}
訪問www.XXX.com/pay/iosCallback,則頁面顯示hello yaf

問題描述:
3.問yaf如何相容yii,實(shí)作存取www.XXX.com/pay/ios-callback,則頁面顯示hello yaf

註:目前個(gè)人能想到的方案為在Nginx層改寫url可以實(shí)現(xiàn),但覺得不是最好方案,故僅討論php層實(shí)現(xiàn)

世界只因有你
世界只因有你

全部回覆(1)
習(xí)慣沉默

經(jīng)過YII源碼的研究,終於找到了它改寫路由的規(guī)則了,方式如下

str_replace(' ', '', ucwords(str_replace('-', ' ', $action)))

實(shí)作方法為將此規(guī)則引入yaf的routerShutdown,即可改寫路由規(guī)則,達(dá)到訪問www.XXX.com/pay/ios-callback,則頁面顯示hello yaf的目的

public function routerShutdown(Yaf_Request_Abstract $request, Yaf_Response_Abstract $response) {
$request->controller = str_replace(' ', '', ucwords(str_replace('-', ' ', $request->controller)));
$request->action = str_replace(' ', '', ucwords(str_replace('-', ' ', $request->action)));
}
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板