本文實例講述了Yii2框架自定義類統(tǒng)一處理url操作。分享給大家供大家參考,具體如下:
因為每個人寫url的方式不一樣,導(dǎo)致我們后期如果對url有修改的話,就非常麻煩。
所以我們需要來統(tǒng)一管理,同時還可以規(guī)范書寫。
1、新建services\UrlService.php,services 是我們自定義的目錄,專門用來寫我們的各種自定義服務(wù)。
?php
namespace app\services;
use yii\helpers\Url;
/**
* 統(tǒng)一管理鏈接,并規(guī)范書寫
* Class UrlService
* @package app\services
*/
class UrlService
{
/**
* 返回一個內(nèi)部鏈接
* @param $uri
* @param array $params
* @return string
*/
public static function buildUrl($uri,$params=[])
{
return Url::toRoute(array_merge([$uri],$params));
}
/**
* 返回一個空鏈接
* @return string
*/
public static function buildNullUrl()
{
return "javascript:void(0)";
}
}
2、我們已經(jīng)給UrlService 類寫了2個靜態(tài)方法,下面來看看如何使用?
在我們之前加載js和css處,代碼就可以修改為如下:
$this->css = [
UrlService::buildUrl("bootstrap/css/bootstrap.min.css",["v"=>$release]),
UrlService::buildUrl('css/app.css')
];
$this->js = [
UrlService::buildUrl('jquery/jquery.min.js'),
UrlService::buildUrl('bootstrap/js/bootstrap.min.js')
];
3、此時我們打開瀏覽器發(fā)現(xiàn)頁面錯位,并沒有成功加載css和js。
我們需要編輯config/web.php這個配置文件,打開如下代碼的注釋
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
],
],
更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結(jié)》、《php優(yōu)秀開發(fā)框架總結(jié)》、《smarty模板入門基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Yii框架的PHP程序設(shè)計有所幫助。
您可能感興趣的文章:- Yii2創(chuàng)建控制器(createController)方法詳解
- yii2控制器Controller Ajax操作示例
- Yii2使用$this->context獲取當(dāng)前的Module、Controller(控制器)、Action等
- Yii2設(shè)置默認(rèn)控制器的兩種方法
- Yii2.0 Basic代碼中路由鏈接被轉(zhuǎn)義的處理方法
- yii2的restful api路由實例詳解
- 詳解Yii2 之 生成 URL 的方法
- Yii2針對指定url的生成及圖片等的引入方法小結(jié)
- yii2 url重寫并隱藏index.php方法
- Yii2框架控制器、路由、Url生成操作示例