YII1 MVC初認識(二)
上次說了yii1的安裝,這次說下簡單的使用,其實使用看手冊就可以了,我這裏就簡單說下快速調通一個框架,跑通一個helloworld的方法。
1.首先 你得知道 views controllers model都在哪裏
首先找到controller文件夾,比如我打開了我手動新建的一個indexcontroller.php
裏面的基礎代碼是我寫的,先說下如何將controller裏輸出的數據返回到對應的view裏,
用的就是$this->render()或者 $this->renderPartial(); 括號裏可以傳頁面地址,例如$this->render(‘index’)
這2個方法都是返回數據到view,區別是render的話返回的時候還要返回公共部分,而renderpartial則不返回公共部分,我給大家簡單直白說下啥意思
比如有個網站,比如首頁他有導航,底部有版權,這個基本網站的每頁都會顯示,我就會把她放到一個公共文件裏就可以了,而用了render後,公共文件裏內容跟著顯示,用了renderpartal則不顯示出來。
2.頁面渲染
別忘記新建view,view下新建一個文件夾 和controller名字相同就行,文件夾名字小寫就行,然後裏面不是html文件,文件夾裏新建的都是php文件,例如我新建一個index文件夾,裏面新建一個index.php文件,這個index.php就是靜態頁文件了,說到靜態頁了,那肯定會引入css,js啥的
css,js啥的 一般都放在assets文件夾裏,我一般是assets文件夾裏新建2個文件夾 一個叫 index,一個叫admin代表一個存儲前臺的樣式文件,一個存儲後臺的樣式文件,然後 index裏創建 css,images,js等文件夾
有了 這些 js ,css,該怎麽引入呢,看下面
在 靜態文件裏也就是剛才新建的index.php裏
<?php echo Yii::app()->request->baseurl?>/assets/index/css/index.css
這樣就可以正常引入了
3.把controller數據輸出到view裏
是不是有些人都想知道怎麽做,跟著我來吧
在indexcontroller.php的actionindex方法裏寫如下代碼
public function actionindex(){ //echo ‘this is index controller‘; //$this->render(‘index‘); $data = array( ‘title‘=>‘abcdefg‘, ); $this->render(‘index‘,$data); }
然後view裏 <?php echo $title?>就可以了
4.foreach使用
基本語法如下,通俗易懂
<?php foreach($article as $v):?>
<li><?php echo $v->title?></li>
<?php endforeach :?>
5.擴展自定義函數
說白了就是自己寫個公公公方法能讓其他的controller都能夠調用到你寫的這個方法。
寫在哪裏呢?------寫在protected目錄下,自己新建個php文件,比如function.php
然後隨便寫個方法 ,比如我寫了一個這個方法
function charr($arr){
echo "<pre>";
echo "</pre>";
}
對了 ,定義了文件,別忘記在入口文件引入,不然所有文件會無法訪問
那麽就在index.php中引入一下吧
include_once ‘./protected/function.php‘;
然後 你可以在你的controller裏 寫個數組 然後用 封裝好的這個函數打印下試試 charr($arr);
上面都是我手寫的可能會存在錯誤,歡迎大家指出,或者加群相互討論。
YII1 MVC初認識(二)