安装composer
网址:https://www.phpcomposer.com
是 PHP 用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。(中国镜像网站)
安装composer:
首页:下载->Composer-Setup.exe->安装(勾选developer mode开发者模式;选择安装目录;选择本地的php版本phpstudy_pro\Extensions\php\php7.3.4nts\php.exe;选择php7.0+最好最新,一直next即可)。dos窗口:composer -v 即可查看composer的版本。
下载laravel:
首页:安装包列表->search packages->输入laravel->选择laravel/laravel,复制下载代码:composer create-project laravel/laravel->dos进入以下想要下载到位置的文件夹位置,输入以上代码->等待下载。
(composer create-project laravel/laravel mylaravel(重命名) 5.8.*(下载最新版本))。
源设置为中国区镜像或阿里云镜像:
修改 composer 的全局配置文件(推荐方式)
打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:
composer config -g repo.packagist composer https://packagist.phpcomposer.com 中国区镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ 阿里云镜像
解除镜像的方法:
如果需要解除镜像并恢复到 packagist 官方源,请执行以下命令:
composer config -g --unset repos.packagist
执行之后,composer 会利用默认值(也就是官方源)重置源地址。
将来如果还需要使用镜像的话,只需要根据前面的“镜像用法”中介绍的方法再次设置镜像地址即可。
简单练习mvc的实现原理
新建一个mvc.cn的站点;
在根目录下新建:controller,model,view文件夹。还有index.php
view中新建welcome.php,内容如下:
<!DOCTYPE html>
<html dir="ltr">
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<p>这是view下的welcome.php文件</p>
<span>时间:</span>
<?php echo date('Y-m-d H:i:s'); ?>
</body>
</html>
controller中新建Home.php,内容如下:
<?php
class Home{
public function index(){
echo 'hello MVC'; //直接显示hello MVC
}
public function welcome(){
require_once __DIR__.'/../view/welcome.php'; //引入view下的视图
}
}
编辑根目录下的index.php文件,内容如下:
<?php
// 路由解析
$server = $_SERVER; //php预定义的超全局变量:保存关于报头、路径和脚本位置的信息
$path_info = $_SERVER['PATH_INFO']; // 结果: /home/index
exit($path_info);
$path = ltrim($path_info,'/'); //结果: home/index //函数移除字符串左侧的空白字符或其他预定义字符
$controller_method = explode('/',$path); //函数把字符串分割为数组
$controller_method[0] = ucfirst($controller_method[0]); //将第一个字母大写
$controller = $controller_method[0]; //控制器名
$method = $controller_method[1]; //方法名
//控制器名为Home,方法为index
require_once __DIR__.'/controller/'.$controller.'.php'; //导入控制器的php
$obj = new $controller();
$obj->$method();
exit();
访问http://mvc.cn/index.php/home/welcome
就会显示:
这是view下的welcome.php文件
时间:
2019-11-02 14:40:07
访问http://mvc.cn/index.php/home/index
就会显示:
hello MVC
将index.php修改为如下:
<?php
// 路由解析
$server = $_SERVER; //php预定义的超全局变量:保存关于报头、路径和脚本位置的信息
// echo '<pre>';
// print_r($server);
$request_uri = $_SERVER['REQUEST_URI']; //结果: /home/index
$path = ltrim($request_uri,'/');
// 解析Controller和method
$controller_method = explode('/',$path); //函数把字符串分割为数组
$controller_method[0] = ucfirst($controller_method[0]); //将第一个字母大写
$controller = $controller_method[0]; //控制器名
$method = $controller_method[1]; //方法名
//控制器名为Home,方法为index
require_once __DIR__.'/controller/'.$controller.'.php'; //导入控制器的php
$obj = new $controller();
$obj->$method();
exit();
并且添加.htaccess文件到首页。
访问时即可去掉index.php
总结:
简单mvc,访问地址:mvc.cn/home/index时,home为控制器名Home中的home类,index为home类中的index方法。
index方法可以引入view下的视图。而模型和数据库相关。