1、下載安裝composer,并把源設(shè)置為中國區(qū)鏡像或阿里云鏡像。
2、根據(jù)課堂案例,練習(xí)一下mvc的實現(xiàn)原理
3、作業(yè)發(fā)到博客上
Composer 是 PHP5.3以上 的一個依賴管理工具。通過這個工具,我們可以方便的下載安裝跟php相關(guān)的各種文件。但是composer在國內(nèi)的速度比較慢,所以我們需要把源設(shè)置為中國區(qū)鏡像或者阿里云鏡像。
百度搜索“composer阿里云鏡像”找到了方法
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
切換好后,我們就可以下載我們的laravel框架了
當(dāng)出現(xiàn)successfully字的時候代表我們的文件已經(jīng)全部安裝完畢了。
mvc的實現(xiàn)原理
在laravel框架中,view寫在resources文件夾里面的views文件夾內(nèi)。controller寫在app文件夾里面Http文件夾里面的Controllers文件夾內(nèi)。
接下來就是用php自己實現(xiàn)一個簡單的mvc操作。
首先我們在項目文件夾內(nèi),先生成三個文件夾,分別是Controllers,Views,Models。
主入口文件index.php代碼如下:
<?php
//主入口文件
//$path = $_SERVER;
//echo "<pre>";
//print_r($path);
//[SCRIPT_NAME] => /index.php
//[PATH_INFO] => /index/hello
//[REQUEST_URI] => /index.php/index/hello
//MVC進入思路:
//1、當(dāng)用戶訪問index文件后,先獲取他的控制器
$controller = ucfirst(explode('/',ltrim($_SERVER['PATH_INFO'],'/'))[0]);
//2、去Controllers文件夾內(nèi)引入相關(guān)控制器的類
if (!file_exists('./Controllers/'.$controller.'action.php')){
exit('不存在該類');
}
require_once './Controllers/'.$controller.'action.php';
//3、獲取要執(zhí)行的方法名
$method = explode('/',ltrim($_SERVER['PATH_INFO'],'/'))[1];
$obj = new $controller();
if(!method_exists($obj,$method)){
exit('不存在該方法');
}
$obj->$method();
?>
通過解析路由地址,將控制器的名字和方法都解析下來,然后引入相關(guān)php文件,執(zhí)行里面的方法。
<?php
class index{
public function home(){
require_once __DIR__.'/../Views/Homeview.php';
//如果有model方法,則繼續(xù)引入model方法
}
public function hello(){
require_once __DIR__.'/../Views/Helloview.php';
//如果有model方法,則繼續(xù)引入model方法
}
}
控制器里面就是如果要讀取數(shù)據(jù),就先執(zhí)行model方法,拿到數(shù)據(jù)后,再引入相關(guān)的視圖文件,將數(shù)據(jù)導(dǎo)入進去。
視圖文件就寫的很簡單,為了演示用
<?php
echo '我是home視圖';
實際效果如下圖,分為正常對的情況和錯誤的情況
一、正確填寫地址
二、填寫錯誤的類
三、填寫錯誤的方法
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號