上一篇文章中咱們一塊兒研究學習了yaf的簡單工做流程與控制器以及視圖部分,而後在視圖模板中打印輸出了:hello,Controller!,也就是經過輸出hello,Controller!的例子,咱們把MVC中的,C與V過了一遍。還有M咱們沒有詳細學習,那麼今天咱們一塊兒來研究學習一下M吧,那麼如今就開始吧。php
在開始以前,我想和你們一塊兒聊聊我所認識的mvc三層架構。mvc這個概念在互聯網上衆說紛紜,有好多種說法。
那麼我和你們來分享一下我對mvc的認識:程序員
鳥哥在手冊中已經說過,model類建議存放在:application/models,那麼咱們如今就打開咱們的文件夾來看看,這個目錄下面的Sample.php。數據庫
咱們一塊兒來看看Sample.php裏面有些什麼:數組
<?php
/**
* @name SampleModel
* @desc sample數據獲取類, 能夠訪問數據庫,文件,其它系統等
* @author mateng
*/
class SampleModel {
public function __construct() {
}
public function selectSample() {
return 'Hello World!';
}
public function insertSample($arrInfo) {
return true;
}
}複製代碼
咱們如今看到的前面幾行是一些註釋,雖然是註釋,可是對咱們瞭解框架,瞭解程序有很大的幫助,那麼咱們如今看看鳥哥在這裏對咱們說了些什麼:bash
咱們繼續看下面,下面就是咱們的代碼主體了,在這裏它沒有繼承其餘類,並且類名的命名方式是:駝峯式命名法。
那麼咱們看看這個model類裏面有些什麼方法:架構
咱們如今大體瞭解了Sample這個類了,以及他的寫法,那麼咱們如今建立一個新的類。就取名User.php吧。mvc
咱們如今在models目錄下面建立一個User.php文件,裏面寫一個類,並且類的名字是文件名+Model。咱們看目錄結構:
app
<?php
/**
* Created by PhpStorm.
* User: mateng
* Date: 2017/11/10
* Time: 上午12:08
*/
class HelloController extends Yaf_Controller_Abstract {
public function indexAction($name = "Stranger") {
$model = new UserModel();
exit;
$this->getView()->assign("content", "Hello,Controller!");
return TRUE;
}
}複製代碼
而後咱們在User.php這個model類中在添加一個select方法,return一個數組:框架
public function selectUser(){
return ['id' => 1,'name' => 'perma'];
}複製代碼
而後咱們在Hello.php控制器中調用這個方法:學習
$model = new UserModel();
var_dump($model->selectUser());
exit;複製代碼
而後咱們運行:http://localhost/lbxd/public/index.php/index/hello/index
好了咱們今天的文章就到這裏了,那麼下一篇咱們來一塊兒研究一下: yaf的一些內建類