Laravel框架下载,安装及路由操作图文详解


Posted in PHP onDecember 04, 2019

本文实例讲述了Laravel框架下载,安装及路由操作。分享给大家供大家参考,具体如下:

NO.1下载Laravel框架并且安装

首先,我们先点击这个链接 https://laravelacademy.org/resources-download 跳转至Laravel学院的资源下载,然后我们点击一键安装包,Laravel框架下载,安装及路由操作图文详解
下载后解压到xampp 的htdocs文件(在这里我用的是xampp)
Laravel框架下载,安装及路由操作图文详解
然后更改文件名为laravel
Laravel框架下载,安装及路由操作图文详解
然后我们在网页输入
Laravel框架下载,安装及路由操作图文详解
这里我们要注意的是,我把laravel解压到了一个名为PHPprimary的文件夹里,你们如果是直接解压到htdocs里则只需在127.0.0.1:8000后面输入/laravel/public,若正常显示图片里的Laravel | 5则表示安装成功

NO.2Laravel核心目录文件介绍

这个是为了帮助你们理解以后在运用Laravel框架时候代码如何存放,然后说明一点,我这是5.2版本的Laravel。
Laravel框架下载,安装及路由操作图文详解

目录一:app

整个Laravel 目录中最需要我们注意的地方,包含设置(config)、路由(routing)、MVC 模型的三大模块都在这里,项目的主要代码工作都在这个目录下完成。

Laravel框架下载,安装及路由操作图文详解

目录二:bootstrap

这个目录主要是用来存放所有的第三方代码,包括框架函数源码(/vendor/laravel)、插件和扩展等。

Laravel框架下载,安装及路由操作图文详解

目录三:config

这个目录是网站的访问入口,请求都会进入 index.php ,同时存放所有对外开放的资源目录,如 css、javascript 以及图片等等皆被存放在此

Laravel框架下载,安装及路由操作图文详解

目录四:database

数据库操作相关文件(数据库迁移和数据填充)

Laravel框架下载,安装及路由操作图文详解

目录五:public

前端控制器和资源相关文件(图片、JavaScript、CSS)

Laravel框架下载,安装及路由操作图文详解

目录六:resources

应用资源
Laravel框架下载,安装及路由操作图文详解

目录七:storage

编译后的视图、基于会话、文件缓存和其它框架生成的文件

Laravel框架下载,安装及路由操作图文详解

目录八:text

应用测试相关文件

Laravel框架下载,安装及路由操作图文详解

目录九:vendor

Composer 依赖模块

Laravel框架下载,安装及路由操作图文详解
里面还有些具体的文件介绍请附录:laravel目录结构介绍

这里我就不做多介绍了

NO.3 Laravel路由

路由的使用

首先,我们要先打开Laravel目录的app目录,再点击APP目录里的http目录,找到一个名为routes.php的文件,然后在里面输入
Laravel框架下载,安装及路由操作图文详解

基础路由的使用方法

1.get获取方式

Route::get('g',function(){
	return 'Hello word';
});

效果如下图:
Laravel框架下载,安装及路由操作图文详解
2.post获取方式

Route::post('p',function(){
	return 'Hello word';
});

效果如下图:
Laravel框架下载,安装及路由操作图文详解

这里要注意的是,post不能直接输出到页面上,否则会报错

多请求路由的使用方法

1.match自定义获取方式

Route::match(['get','post'],'m',function(){
	return 'Hello word';
});

效果如下图:
Laravel框架下载,安装及路由操作图文详解

2.any获取方式

Route::any('any',function(){
	return 'Hello word';
});

效果如下图:
Laravel框架下载,安装及路由操作图文详解

路由参数使用方法

1.必选参数

Route::get('user/{id}',function($id){
	return 'User-id-'.$id;
});

效果如下图:
Laravel框架下载,安装及路由操作图文详解
2.可选参数

//未定义值的时候
Route::get('user/{name?}',function($name = null){
	return 'User-name-'.$name;
});

效果如下图:
Laravel框架下载,安装及路由操作图文详解

//定义了默认参数后
Route::get('user/{name?}',function($name = 'Rarin'){
	return 'User-name-'.$name;
});

效果如下图:
Laravel框架下载,安装及路由操作图文详解

3.正则匹配限制参数

Route::get('user/{id}/{name?}',function($id,$name = 'Rarin'){
	return 'User-id-'.$id.'-name-'.$name;
})->where(['id' => '[0-9]+', 'name' => '[A-Za-z]+']);

效果如下图:
Laravel框架下载,安装及路由操作图文详解

路由别名的使用方法

Route::get('user/center',['as' => 'Rarin',function(){
	return route('Rarin');
}]);

效果如下图:
Laravel框架下载,安装及路由操作图文详解

路由群组的使用方法

Route::group(['prefix'=>'member'],function(){

	Route::get('user/center',['as' => 'Rarin',function(){
		return route('Rarin');
	}]);

	Route::any('Rarin',function(){
		return 'def';
	});
});

效果如下图:
第一种效果:
Laravel框架下载,安装及路由操作图文详解
第二种效果:
Laravel框架下载,安装及路由操作图文详解

路由输出视图

Route::get('view',function(){
	return view('welcome');
});

效果如下图:
Laravel框架下载,安装及路由操作图文详解

好了,到这里,我们的路由已经讲完了

附录:laravel目录结构介绍

文件夹名称 简介
app 应用程序的业务逻辑代码存放文件夹
app/Console 存放自定义 Artisan 命令文件
app/Http/Controllers 存放控制器文件
app/Http/Middleware 存放「中间件」文件
bootstrap 框架启动与自动加载设置相关的文件
composer.json 应用依赖的扩展包
composer.lock 扩展包列表,确保这个应用的副本使用相同版本的扩展包
config 应用程序的配置文件
database 数据库操作相关文件(数据库迁移和数据填充)
node_modules 存放 NPM 依赖模块
package.json 应用所需的 NPM 包配置文件
phpunit.xml 测试工具 PHPUnit 的配置文件
public 前端控制器和资源相关文件(图片、JavaScript、CSS)
readme.md 项目介绍说明文件
resources 应用资源
resources/assets 未编译的应用资源文件(图片、JavaScript、CSS)
resources/lang 多语言文件
resources/views 视图文件
routes/api.php 用于定义 API 类型的路由
routes/channels.php 事件转播注册信息
routes/console.php 用于定义 Artisan 命令
routes/web.php 用于定义 Web 类型的路由(重点,大部分情况下本书会用到)
server.php 使用 PHP 内置服务器时的 URL 重写(类似于 Apache 的 "mod_rewrite" )
storage 编译后的视图、基于会话、文件缓存和其它框架生成的文件
storage/app 目录可用于存储应用程序使用的任何文件
storage/framework 目录被用于保存框架生成的文件及缓存
storage/logs 应用程序的日志文件
tests 应用测试相关文件
vendor Composer 依赖模块
webpack.mix.js Laravel 的前端工作流配置文件
yarn.lock Yarn 依赖版本锁定文件
.gitignore 被 Git 所忽略的文件
.env 环境变量配置文件

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php 3行代码的分页算法(求起始页和结束页)
Oct 21 PHP
PHP 5.3.1 安装包 VC9 VC6不同版本的区别是什么
Jul 04 PHP
PHP中的按位与和按位或操作示例
Jan 27 PHP
回帖脱衣服的图片实现代码
Feb 15 PHP
php中unserialize返回false的解决方法
Sep 22 PHP
一个经典实用的PHP图像处理类分享
Nov 18 PHP
教大家制作简单的php日历
Nov 17 PHP
Yii2实现上下联动下拉框功能的方法
Aug 10 PHP
深入理解PHP类的自动载入机制
Sep 16 PHP
PHP实现压缩图片尺寸并转为jpg格式的方法示例
May 10 PHP
Laravel重定向,a链接跳转,控制器跳转示例
Oct 22 PHP
php操作redis数据库常见方法实例总结
Feb 20 PHP
Laravel框架Eloquent ORM简介、模型建立及查询数据操作详解
Dec 04 #PHP
PHP实现二维数组(或多维数组)转换成一维数组的常见方法总结
Dec 04 #PHP
PHP实现提取多维数组指定一列的方法总结
Dec 04 #PHP
php实现快速对二维数组某一列进行组装的方法小结
Dec 04 #PHP
PHP实现发送微博消息功能完整示例
Dec 04 #PHP
PHP连续签到功能实现方法详解
Dec 04 #PHP
Laravel框架Eloquent ORM修改数据操作示例
Dec 03 #PHP
You might like
Linux下ZendOptimizer的安装与配置方法
2007/04/12 PHP
PHP应用JSON技巧讲解
2013/02/03 PHP
PHP快速按行读取CSV大文件的封装类分享(也适用于其它超大文本文件)
2014/04/10 PHP
Laravel框架自定义分页样式操作示例
2020/01/26 PHP
抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
2007/07/11 Javascript
JS 毫秒转时间示例代码
2013/09/22 Javascript
js substring从右边获取指定长度字符串(示例代码)
2013/12/23 Javascript
Jquery实现自定义tooltip示例代码
2014/02/12 Javascript
js函数模拟显示桌面.scf程序示例
2014/04/20 Javascript
详细解密jsonp跨域请求
2015/04/15 Javascript
jQuery实现图片预加载效果
2015/11/27 Javascript
JavaScript模拟鼠标右键菜单效果
2020/12/08 Javascript
vue双向数据绑定原理探究(附demo)
2017/01/17 Javascript
浅析node应用的timing-attack安全漏洞
2018/02/28 Javascript
JavaScript中call和apply方法的区别实例分析
2018/08/03 Javascript
移动端(微信等使用vConsole调试console的方法
2019/03/05 Javascript
js简单遍历获取对象中的属性值的方法示例
2019/06/19 Javascript
easyUI使用分页过滤器对数据进行分页操作实例分析
2020/06/01 Javascript
vue实践---vue不依赖外部资源实现简单多语操作
2020/09/21 Javascript
[01:02:25]2014 DOTA2华西杯精英邀请赛 5 24 iG VS DK
2014/05/26 DOTA
Django中使用第三方登录的示例代码
2018/08/20 Python
浅析Python3中的对象垃圾收集机制
2019/06/06 Python
django 实现将本地图片存入数据库,并能显示在web上的示例
2019/08/07 Python
python实现12306登录并保存cookie的方法示例
2019/12/17 Python
Tensorflow实现在训练好的模型上进行测试
2020/01/20 Python
python3实现往mysql中插入datetime类型的数据
2020/03/02 Python
python 用opencv实现霍夫线变换
2020/11/27 Python
python中把元组转换为namedtuple方法
2020/12/09 Python
澳大利亚领先的女帽及配饰公司:Morgan&Taylor
2019/12/01 全球购物
写求职信有什么意义
2014/02/17 职场文书
大学生上课迟到检讨书
2014/10/15 职场文书
物业客服专员岗位职责
2015/04/07 职场文书
2016春节放假通知范文
2015/08/18 职场文书
大学迎新生欢迎词
2015/09/29 职场文书
python实现三阶魔方还原的示例代码
2021/04/28 Python
Mysql排序的特性详情
2021/11/01 MySQL