蘇州培訓(xùn)網(wǎng) > 蘇州思科認(rèn)證培訓(xùn)機(jī)構(gòu) > 三網(wǎng)IT
首頁(yè) 培訓(xùn)網(wǎng) 最新資訊 熱門(mén)問(wèn)答

三網(wǎng)IT

13013833891 免費(fèi)試聽(tīng)

您當(dāng)前的位置: 蘇州IT認(rèn)證培訓(xùn) > 蘇州思科認(rèn)證培訓(xùn) > 常熟思科認(rèn)證

常熟思科認(rèn)證_思科認(rèn)證培訓(xùn)

¥詳詢

班制:周末班

蘇州三網(wǎng)IT教育
上課(咨詢)地址:蘇州市干將東路666號(hào)和基廣場(chǎng)
報(bào)名咨詢 預(yù)約試聽(tīng)
課程介紹
常熟思科認(rèn)證

思科認(rèn)證課程介紹:理論課程

常熟思科認(rèn)證

理論課程根據(jù)CCIE RS v5.0考試大綱內(nèi) 容要求進(jìn)行設(shè)計(jì),共包含五個(gè)模塊

【1 】Layer 2 Technologies
【2】 Layer 3 Technologies
【3 】VPN Technologies
【4 】Infrastructure Security
【5 】Infrastructure Services

理論課程每個(gè)模塊除了老師直播上課之外,還將為學(xué)員提供

【1】老師上課使用的課件

【2】老師上課的課堂筆記

【3】老師上課的講解視頻

【4】理論測(cè)試文檔

【5】實(shí)驗(yàn)測(cè)試文檔

【6】一對(duì)一答疑服務(wù)及群答疑

【7】.....等

常熟思科認(rèn)證

場(chǎng)地租賃服務(wù)

常熟思科認(rèn)證

擁有10間專業(yè)培訓(xùn)教室,包括了20臺(tái)、25臺(tái)和30臺(tái)等不同規(guī)格的培訓(xùn)機(jī)房, 機(jī)器配置性能卓越,高速率連接因特網(wǎng),可以滿足不 同層次的信息化培訓(xùn)需求。

先后為Microsoft公司、IBM公司、Oracle公司、Juniper公司、EMC公司,中 國(guó)移動(dòng)、中國(guó)石化等客戶提供了相應(yīng)的培訓(xùn)場(chǎng)地服務(wù) ,獲得了客戶的一致認(rèn)可!

思科CCIE-DC直通車(數(shù)據(jù)中心)

常熟思科認(rèn)證

思科CCIE-DC直通車”課程涵蓋思科數(shù)據(jù)中心方向的所有初級(jí)、中級(jí)、高級(jí)課程知識(shí),總共分為CCNA->CCNP->CCIE三個(gè)階段,共5門(mén)課程,總課時(shí)為16天。課程設(shè)計(jì)由淺入深,適合所有具備CCNP-RS基礎(chǔ)的學(xué)員參加。
1.1 CCNA-DC(包含1門(mén)課程,課時(shí)4天)
課程概述:包含NEXUS 交換機(jī)基礎(chǔ)知識(shí),存儲(chǔ)原理知識(shí),服務(wù)器虛擬化知識(shí)等數(shù)據(jù)中心方面的基礎(chǔ)知識(shí)。
1.2 CCNP-DC(包含3門(mén)課程,課時(shí)12天)
課程概述:包含NXOS 交換機(jī)的原理和配置、存儲(chǔ)網(wǎng)絡(luò)的原理和配置、UCS 服務(wù)器架構(gòu)和使用、服務(wù)器虛擬化和網(wǎng)絡(luò)虛擬化等知識(shí)。
課程列表:
1)  NX-OS(NEXUS 交換機(jī)):課時(shí)6天,包含NXOS 的原理和配置
2)  Storage(存儲(chǔ)網(wǎng)絡(luò)):課時(shí)3 天,包含存儲(chǔ)網(wǎng)絡(luò)的原理知識(shí)和配置方法。
3)  UCS(UCS 服務(wù)器):課時(shí)3天,包含服務(wù)器的操作使用以及網(wǎng)絡(luò)虛擬化。
1.3 CCIE-DC集訓(xùn)營(yíng)(包含1門(mén)課程,課時(shí)按需安排)
課程概述:包含CCIE LAB考試的高級(jí)知識(shí)點(diǎn)、分解實(shí)驗(yàn)、考題講解等。

laravel4.2框架路由配置深入了解(上篇)



laravel框架路由并不像YII或CI等框架那樣有著固定的默認(rèn)方式(路徑,GET,POST來(lái)提取),因此在使用laravel框架時(shí)配置路由是必備的。

路由是**配置注入到程序中,laravel路由非常靈活,不僅可以指定Controller對(duì)應(yīng)的Action還可以完成很多的偽靜太工作,在進(jìn)入MVC前還可以做一些必要的參數(shù)過(guò)濾。

優(yōu)點(diǎn):

面向?qū)ο蠊芾砺酚?,配置靈活,可以針對(duì)不同的地址解析處理。


路由可過(guò)濾,分組提高路由調(diào)用精準(zhǔn)安全。


路由執(zhí)行不只針對(duì)MVC控制器,也可以寫(xiě)入其它自定義處理入口。


路由調(diào)用Action時(shí)可以定義調(diào)用傳入的參數(shù)。


路由可以區(qū)分GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS等請(qǐng)方式調(diào)用不同的Action

缺點(diǎn):



路由管理程序復(fù)雜,增加系統(tǒng)負(fù)載。


路由配置會(huì)隨著系統(tǒng)升級(jí)改版不斷增加,增加了維護(hù)時(shí)間。


路由配置靈活,但每個(gè)Controller**少一個(gè)路由配置管理,增加開(kāi)發(fā)流程。



路由是入口必經(jīng)之路,如果路由配置出錯(cuò),會(huì)讓整個(gè)系統(tǒng)報(bào)錯(cuò),影響升級(jí)維護(hù)開(kāi)發(fā)。

**方文檔中對(duì)路由配置做了些常規(guī)的示例:http://v4.golaravel.com/docs/4.2/routing

路由配置都是** Illuminate\Support\Facades\Route 類,Route實(shí)際上是一個(gè)外觀類,它繼承于Illuminate\Support\Facades\Facade 并不是直接的路由類,框架**類別名處理使Illuminate\Support\Facades\Route可以**Route訪問(wèn),這樣可以大大的簡(jiǎn)化代碼,Route類本身是全靜態(tài)方法,只要調(diào)用的靜態(tài)方法非當(dāng)前類的,都可以當(dāng)路由類來(lái)使用,(**次使用必需是靜態(tài)調(diào)用方法,如:Route::controller(user, UserController);)。實(shí)際上在laravel框架中大量了使用這種外觀模式,我們可以在 vendor/laravel/framework/src/Illuminate/Support/Facades/目錄下看到很多的外觀類,這些外觀外都已經(jīng)指定了對(duì)應(yīng)的操作類,存放在loC容器類中,使用這種外觀模式主要是統(tǒng)一入口類,簡(jiǎn)化程序,當(dāng)然如果不使用這些外觀類直接調(diào)用對(duì)應(yīng)的類也可以,只是有的類在調(diào)用時(shí)沒(méi)有那么方便,可能有的類在new時(shí)需要一些參數(shù),而這些參數(shù)又要?jiǎng)?chuàng)建一些對(duì)象,相對(duì)對(duì)使用外觀類來(lái)說(shuō)復(fù)雜的多。



所有的外觀類都可以** Facades::getFacadeRoot() 來(lái)獲取外觀類指定的實(shí)際類對(duì)象,如:

$route=Route::getFacadeRoot();//獲取路由對(duì)象
var_dump(get_class($route));//打印對(duì)象
# 打印結(jié)果如下
# string(25) "Illuminate\Routing\Router"

所以


1 Route::controller(user, UserController);

1 Route::getFacadeRoot()->controller(user, UserController);

這兩行代碼功能結(jié)果是一樣的。

laravel框架的外觀模式比較復(fù)雜,這里就不多作說(shuō)明。

上面我們打印了路由類(Illuminate\Routing\Router),現(xiàn)在我們來(lái)看看路由類的對(duì)外函數(shù):



/*============= 路由基本配置 =============*/

/*
* ******** 常規(guī)路由配置 **********
*
*參數(shù):$uri [string]指定URL地址,必須是標(biāo)準(zhǔn)的URL地址,不含域名
*      $action [Closure|array|string] 要調(diào)用的控制方法
*      $methods [array|string] 指定請(qǐng)求類型如:GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS
*返回值:\Illuminate\Routing\Route對(duì)象
*/
Route::get($uri, $action);//配置使用GET或HEAD請(qǐng)求路由
 
Route::post($uri, $action);//配置使用POST請(qǐng)求路由
 
Route::put($uri, $action);//配置使用PUT請(qǐng)求路由
 
Route::patch($uri, $action);//配置使用PATCH請(qǐng)求路由
 
Route::delete($uri, $action);//配置使用DELETE請(qǐng)求路由
 
Route::options($uri, $action);//配置使用OPTIONS請(qǐng)求路由
 
Route::any($uri, $action);//配置使用GET,HEAD,POST,PUT,PATCH,DELETE請(qǐng)求路由
 
Route::match($methods, $uri, $action);//配置自定義請(qǐng)求路由

常規(guī)路由配置是一對(duì)一的配置,也就是說(shuō)一個(gè)action就得配置一個(gè)路由。


常規(guī)路由配置中,框架會(huì)先以請(qǐng)求類型匹配如:GET或POST然后提出匹配成功的路由,這種方式配置的路由并未加載對(duì)應(yīng)的Action文件,只是暫存一些加載信息,相對(duì)安全,但其配置數(shù)據(jù)比較多。


注意:

$url 是請(qǐng)求路由地址,允許配置方法:


直接對(duì)應(yīng)的URL地址,如:test-route/action



提取參數(shù)方式,如:test/{name}/{id?} 注意:在{}內(nèi)的是從請(qǐng)求路由URL中匹配提取的標(biāo)識(shí),并不單指請(qǐng)求的URL地址為 test/name/id。在{}中只參數(shù)的占位標(biāo)識(shí),它可以是‘test/show/1’或‘show/list’等,相當(dāng)于正則:‘test/[^/] (/[^\]*)?’,占位標(biāo)識(shí)還可以用來(lái)參數(shù)判斷過(guò)濾處理,即指定參數(shù)的數(shù)據(jù)結(jié)構(gòu),如果匹配的則進(jìn)入路由。

$action 參數(shù)允許有三種類型:

   Closure 是匿名函數(shù),當(dāng)前路由配置成功后會(huì)調(diào)用這個(gè)匿名函數(shù),默認(rèn)是不會(huì)有參數(shù)傳入,如果在路由URL中配置值則按配置的先后傳入U(xiǎn)RL路由參數(shù)。

   array 是數(shù)組方式,可有元素如:

array(
    # 指定訪問(wèn)域名,并且可以使用{}把域名的部分內(nèi)容提取來(lái)當(dāng)Action的參數(shù),
    #    以下方式是把laravel提取出來(lái)傳給Action方法**個(gè)參數(shù),
    #    可以同時(shí)提取多個(gè),默認(rèn)為空。
    # 注意:在{}中間的字符串只是參數(shù)名,并不是指定這個(gè)域名,只是指定了相關(guān)規(guī)則。
    # 同路由URL一樣處理
    
    domain=>www.{laravel}.com,
 
    # 必須設(shè)置,可以是匿名函數(shù)或控制器@方法
    #(**后還是會(huì)轉(zhuǎn)為匿名函數(shù),原值放在controller下標(biāo)中保存)
 
    uses=>HomeController@anyIndex,
 
    prefix=>dc-,  //路由URL前綴部分,默認(rèn)為空。
 
    # 當(dāng)前路由的名稱,下面會(huì)詳細(xì)說(shuō)明。
    
    as=>name,
    
    controller=>HomeController@anyIndex, //無(wú)須設(shè)置,該下標(biāo)是uses下標(biāo)的副本。
    
    Closure=>function(){}, //類似uses,但只能指定匿名函數(shù),優(yōu)先級(jí)沒(méi)有uses高
    
    https, //指定HTTP是否為加密模式
    
    http, //指定HTTP是否為非加密模式
    
    # 過(guò)濾參數(shù)說(shuō)明:
    #  before 與after 元素是輸入輸出過(guò)濾處理,
    #  這兩個(gè)需要**Route::filter添加過(guò)濾項(xiàng),否則無(wú)效
    #  過(guò)濾規(guī)則:[array|string]
    #  數(shù)組形式:array(name,list)
    #  字符串形式:name:filter|list:filter
    #  注意filter非必需,只是用來(lái)傳入過(guò)濾器的參數(shù)值,
    #  可以用,來(lái)連接多個(gè)參數(shù)。如果沒(méi)有filter參數(shù)則可以這樣寫(xiě) name|list。
    
    
    before=>name:filter|list:filter, //進(jìn)入action前參數(shù)過(guò)濾處理規(guī)則
    
    after=>array(name,list) //調(diào)用action返回值進(jìn)行過(guò)濾處理規(guī)則
)


    string 是直接給定路由要執(zhí)行的 控制器@方法 例:GoodsController@anyList。格式必須正確。

提醒:路由中的URL或域名可以獲取指定提取參數(shù),如:

Route::get(index/{id},indexController@Action);


則可以**:

Route::input(id);

獲取參數(shù)值。參數(shù)鍵名必需相同。



還可以**:


Route::current()->parameters();



獲取全部參數(shù)數(shù)組。

路由指定的 as 名稱使用:

當(dāng)在路由中指定了as鍵名,則當(dāng)前這個(gè)路由器具有更多操作功能:

例:

Route::get(index/{id?},[as=>name,users=>IndexController@index])

** Route::currentRouteName() 獲取當(dāng)前執(zhí)行路由的 as 值,如果不存在則返回 null

也可以用于生成URL地址或跳轉(zhuǎn)。



URL::route(name); //生成URL地地址: index
Redirect::route(name); //跳轉(zhuǎn)地址: index



或者:
URL::route(name,12); 生成URL地址:index/12
Redirect::route(name,12); 生成跳轉(zhuǎn)URL為:index/12




也就是說(shuō),如果URL地址或域名中有指定參數(shù),
則可以在 URL::route或Redirect::route追加參數(shù)

注意:如果上面例子中的URL為‘index/{id}’,不指定為{id?}時(shí),則在使用URL::route時(shí),則必需使用追加參數(shù)的方式,否則‘{id}’串會(huì)被生成到URL地址:/index/{id}


路由判斷,是比較常用的,通常如果我們指定了路由的AS則判斷會(huì)更加方便,尤其是多個(gè)路由指定到同一個(gè)Action中時(shí),會(huì)更容易判斷。

Route::is(name); 匹配成功返回true,失敗返回false,



參數(shù)可以使用 * 進(jìn)行正則通配,但只能使用 * 作為通配,不能使用其它正則表達(dá)式
可以傳入多個(gè)參數(shù)。如:
Route::is(name1,name2,name/laravel/*);



當(dāng)然我們也可以使用 Request::is(index/*);來(lái)判斷,當(dāng)然這種判斷不具有便捷性。


判斷是否存在某個(gè)路由
Route::has(name);



其實(shí),給路由添加 as 也比較方便權(quán)限管理,對(duì)于添加一個(gè) as 值或添加一個(gè) url 地址來(lái)比,as 名稱有很大我方便性。


/*
* ******** 路由過(guò)濾器配置 **********
*
*參數(shù):$name [string]過(guò)濾器名,實(shí)際會(huì)生成 router.filter:$name 事件標(biāo)識(shí)
*      $callback [mixed] 要調(diào)用的過(guò)濾控制方法
*返回值:\Illuminate\Routing\Route對(duì)象
*/
Route::filter($name, $callback)


   參數(shù) $callback 支持參數(shù)類型:

 Closure 匿名函數(shù)。



 FilterClassName[@ActionName] 過(guò)濾器類名或者再加上過(guò)濾器方法名,默認(rèn)方法名為filter。

 array 要過(guò)濾的對(duì)象與方法名數(shù)組如 array(new FilterClass,number)




**終是以調(diào)用函數(shù)的方法進(jìn)行處理,參數(shù)順序有:



當(dāng)前路由對(duì)象 Illuminate\Routing\Route



當(dāng)前請(qǐng)求對(duì)象 Illuminate\Http\Request


過(guò)濾規(guī)則中追加的參數(shù),如果沒(méi)有追加則為空。


如:

# 添加常規(guī)路由
 
Route::get(test/filter,[
    Closure=>function(){ //處理函數(shù)
        return ok;
    },
    before=>name:test,arg //添加進(jìn)入處理函數(shù)前過(guò)濾處理
 ]);
 
# 添加過(guò)濾器
 
Route::filter(name,function($route, $request,$response1,$response2){
    var_dump($response1,$response2);die;
});



請(qǐng)求地址:/test/filter




結(jié)果:string(3) "test" string(3) "arg"


注意:在過(guò)濾器中返回值會(huì)直接影響到路由是否成功調(diào)用控制器的Action,只要過(guò)濾器中有返回值,都會(huì)直接跳過(guò)調(diào)用控制器的Action而直接把過(guò)濾器的返回值作為本次請(qǐng)求的結(jié)果,同樣過(guò)濾器的返回值得按標(biāo)準(zhǔn)的類型處理,允許類型有:string,array,Redirect(地址跳轉(zhuǎn)處理),或者ROM數(shù)據(jù)集等,不能出現(xiàn)布爾,資源,沒(méi)有__toString函數(shù)的對(duì)象等。


/*
* ******** 路由全局選擇性過(guò)濾**********
*
*參數(shù):$pattern [string] 匹配路由URL串
*      $name [string] 要調(diào)用的過(guò)濾器名,** Route::filter 添加的過(guò)濾器
*      $methods [array|string|null] 請(qǐng)求類型如:get,post等,可以指定多個(gè)類型
*返回值:\Illuminate\Routing\Route對(duì)象
*
*/
 
# 只要匹配 $pattern 串的路由URL都執(zhí)行,
#          $name 過(guò)濾器名,
#          $methods 是指定請(qǐng)求類型,允許單個(gè)或多個(gè)。
# 注意:$pattern 允許使用 * 通配,如 admin/* ,不能使用其它正則表達(dá)式。
 
Route::when($pattern, $name, $methods = null);
 
# 只要匹配 $pattern 正則的路由URL都執(zhí)行,
#          $name 過(guò)濾器名,
#          $methods 是指定請(qǐng)求類型,允許單個(gè)或多個(gè)。
# 注意:這里 $pattern 是正則表達(dá)式。
 
Route::whenRegex($pattern, $name, $methods = null);


注意:選擇性路由過(guò)濾是針對(duì)當(dāng)前所有的注入路由節(jié)點(diǎn),只要路由節(jié)點(diǎn)的URL匹配成功都會(huì)執(zhí)行指定的過(guò)濾器,并不會(huì)因?yàn)橛行┞酚晒?jié)點(diǎn)在這之前而不影響。


如:

Route::get(admin/{id},function(){



    var_dump(Route::input(id));



});

Route::whenRegex(#admin/(\d )?#,filterId,[post,get]);


Route::when(admin/*,filterNum,[post,get]);


Route::filter(filterNum,function(){



    var_dump(filterNum);


});


Route::filter(filterId,function(){


    var_dump(filterId);


});

請(qǐng)求地址:admin/12




輸出的結(jié)果是:

string(9) "filterNum"
string(8) "filterId"
string(2) "12"


注意:使用when比使用whenRegex過(guò)濾的優(yōu)先級(jí)高,也就是使用when要在使用whenRegex添加過(guò)濾先執(zhí)行,不輪先程序后。whenRegex添加是完全使用正則的方式,所以**個(gè)參數(shù)必需是合法可用的正則表達(dá)式。when與whenRegex是全局的,只要有添加的路由節(jié)點(diǎn)URL能匹配到則會(huì)進(jìn)入過(guò)濾器。

/*
* ******** 路由參數(shù)判斷過(guò)濾器配置 **********
*
*參數(shù):$key [string]參數(shù)名稱,如路由URL:test/filter/{id} 中的id就是參數(shù)名
*      $pattern [string]要調(diào)用的過(guò)濾控制方法 過(guò)濾正則表達(dá)式
*      $patterns [array]設(shè)置多個(gè) 參數(shù)名稱=>過(guò)濾正則表達(dá)式 數(shù)組
*返回值:null
*/
Route::pattern($key, $pattern);//設(shè)置全局條件,只影響設(shè)置后所有路由。
Route::patterns($patterns);//設(shè)置多個(gè)全局條件,
 
/*
******* 這里主要是針對(duì) where 函數(shù)作說(shuō)明,
******* 由于這個(gè)參數(shù)屬于 Illuminate\Routing\Route(路由單點(diǎn)對(duì)象),要**常規(guī)路由才能獲得。
*
*參數(shù):$name [array|string] 如果是字符串則是參數(shù)名,如果是數(shù)組則(參數(shù)名=>過(guò)濾正則)組成。
*      $expression [string|null]如果前參數(shù)為字符串,則這個(gè)為過(guò)濾正則,否則無(wú)意義。
*返回值:\Illuminate\Routing\Route對(duì)象
*/
 
Route::get(test/filter/{id},TestController@filter)->where($name, $expression = null);


相關(guān)推薦:


蘇州思科認(rèn)證培訓(xùn)   蘇州思科認(rèn)證培訓(xùn)班   蘇州思科認(rèn)證培訓(xùn)學(xué)校

體驗(yàn)課預(yù)約試聽(tīng)

倒計(jì)時(shí)

12:00:00

課程熱線:

13013833891
在線咨詢

客服在線時(shí)間:早上9點(diǎn)~下午6點(diǎn),其他時(shí)間請(qǐng)?jiān)诰€預(yù)約報(bào)名或留言,謝謝!

蘇州思科認(rèn)證

免費(fèi)體驗(yàn)課開(kāi)班倒計(jì)時(shí)

11: 41: 09

稍后會(huì)有專業(yè)老師給您回電,請(qǐng)保持電話暢通

咨詢電話:13013833891
推薦機(jī)構(gòu) 全國(guó)分站 更多課程

本周僅剩 個(gè)試聽(tīng)名額

請(qǐng)鍵入信息,稍后系統(tǒng)將會(huì)把領(lǐng)獎(jiǎng)短信發(fā)至您的手機(jī)

申請(qǐng)?jiān)嚶?tīng)名額

已有10254人申請(qǐng)免費(fèi)試聽(tīng)

01電話咨詢 | 13013833891

QQ:1413838287
加盟合作:0755-83654572