怎么使用yii框架創(chuàng)建hello頁面_第1頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、怎么使用yii框架創(chuàng)建hello頁面本章描述了如何在你的應用中創(chuàng)建一個新的hello頁面。為了實現這一目標,將會創(chuàng)建一個操作和一個視圖:應用將會分派頁面哀求給動作(推舉學習:yii教程)動作將會依次渲染視圖展現hello給終于用戶貫通囫圇章節(jié),你將會把握三件事:如何創(chuàng)建一個動作去響應哀求,如何創(chuàng)建一個視圖去構造響應內容,以及一個應用如何分派哀求給動作。創(chuàng)建動作為了hello,需要創(chuàng)建一個say操作,從哀求中接收message參數并顯示給終于用戶。假如哀求沒有提供message參數,操作將顯示默認參數hello。信息:操作是終于用戶可以挺直拜訪并執(zhí)行的對象。操作被組織在控制器中。一個操作的執(zhí)行結

2、果就是終于用戶收到的響應內容。操作必需聲明在控制器中。為了容易起見,你可以挺直在sitecontroller控制器里聲明say操作。這個控制器是由文件controllers/sitecontroller.php定義的。以下是一個操作的聲明:render(&39;say&39;,&39;message&39;=>$message);在上述sitecontroller代碼中,say操作被定義為actionsay辦法。yii用法action前綴區(qū)別一般辦法和操作。action前綴后面的名稱被映射為操作的id。涉及到給操作命名時,你應當理解yii如何處理操作id。

3、操作id總是被以小寫處理,假如一個操作id由多個單詞組成,單詞之間將由連字符銜接(如create-comment)。操作id映射為辦法名時移除了連字符,將每個單詞首字母大寫,并加上action前綴。例子:操作idcreate-comment相當于辦法名actioncreatecomment。上述代碼中的操作辦法接受一個參數$message,它的默認值是hello(就像你設置php中其它函數或辦法的默認值一樣)。當應用接收到哀求并確定由say操作來響應哀求時,應用將從哀求的參數中尋覓對應值傳入進來。換句話說,假如哀求包含一個message參數,它的值是goodbye,操作辦法中的$message

4、變量也將被填充為goodbye。在操作辦法中,render()被用來渲染一個名為say的視圖文件。message參數也被傳入視圖,這樣就可以在里面用法。操作辦法會返回渲染結果。結果會被應用接收并顯示給終于用戶的掃瞄器(作為整頁html的一部分)。創(chuàng)建視圖視圖是你用來生成響應內容的腳本。為了說hello,你需要創(chuàng)建一個say視圖,以便顯示從操作辦法中傳來的message參數。say視圖應當存為views/site/say.php文件。當一個操作中調用了render()辦法時,它將會按views/控制器id/視圖名.php路徑加載php文件。注重以上代碼,message參數在輸出之前被html-e

5、ncoded辦法處理過。這很有須要,當參數來自于終于用戶時,參數中可能隱含的惡意javascript代碼會導致跨站腳本(xss)襲擊。固然了,你也許會在say視圖里放入更多內容。內容可以由html標簽,純文本,甚至php語句組成。事實上say視圖就是一個由render()執(zhí)行的php腳本。視圖腳本輸出的內容將會作為響應結果返回給應用。應用將依次輸出結果給終于用戶。試運行創(chuàng)建完動作和視圖后,你就可以通過下面的url拜訪新頁面了:http:/hostname/index.php?r=site/say&message=hello+worldyii-3.png這個url將會輸出包含he

6、lloworld的頁面,頁面和應用里的其它頁面用法同樣的頭部和尾部。假如你省略url中的message參數,將會看到頁面只顯示hello。這是由于message被作為一個參數傳給actionsay()辦法,當省略它時,參數將用法默認的hello代替。信息:新頁面和其它頁面用法同樣的頭部和尾部是由于render()辦法會自動把say視圖執(zhí)行的結果嵌入稱為布局的文件中,本例中是views/layouts/main.php。上面url中的參數r需要更多說明。它代表路由,是囫圇應用級的,指向特定操作的自立id。路由格式是控制器id/操作id。應用接受哀求的時候會檢查參數,用法控制器id去確定哪個控制器應當被用來處理哀求。然后相應控制器將用法操作id去確定哪個操作辦法將被用來做詳細工作。上述例子中,路由site/say將被解析至sitecontroller控制器和其中的say操作。因此sitecontroller:actionsay()辦法將被調用處理哀求。信息:與操作一樣,一個應用中控制器同樣有唯一的id??刂破鱥d和操作id用法同樣的命名規(guī)章??刂破鞯念惷醋杂诳刂破鱥

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論