最近做项目用到了laravel框架,所以决定从前端的角度对laravel进行了一些学习和总结。
laravel简介
1、laravel是php框架
2、具有验证、路由、session、缓存、数据库迁移工具、单元测试等常用的工具和功能
laravel使用
1、开发环境
1.对php版本的要求
laravel版本 | PHP版本 |
---|---|
5.1、5.2 | 5.5.9+ |
4.2 | 5.4+ |
4.1 | 5.3.7+ |
ps:laravel发布的第一个LTS(long time support)版本是5.1,建议使用5.1以上版本
2.Windows系统下使用的是XAMPP搭建环境
上图XAMPP安装后XAMPP文件夹下文件目录
2、下载
1、直接下载地址:http://www.golaravel.com/download/
2、本文案例使用5.2版本
3、启动XAMPP,下载的安装包解压,解压后的文件夹整个放入htdocs目录下
4、在浏览器中输入http://localhost:82/laravel/public/,82是我设置的端口,默认端口是80
5、如果不出错可以看到以下内容
3、目录
1、app包含应用程序的核心代码
ps:MVC中的C,即controller放在app文件夹下的http文件夹中
2、bootstrap目录包含框架启动和自动加载配置的文件
3、config包含所有应用程序的配置文件,eg:缓存,数据库,邮件,队列,session,视图and so on。
4、database,数据库迁移与数据填充文件
5、storage放一些编译后生成的文件
6、tests测试相关
7、vendor放置一些依赖模块
8、public文件夹放一些公用的css,js,image图片等
9、resources放一些模板,视图文件
4、写一个Hello World
在安装时我们曾经看到过laravel5,这个页面是laravel框架的默认welcome页,该页面方式resources文件夹下面的views文件夹中,文件名叫做welcome.blade.php,打开该文件将Laravel 5改为Hello World!
刷新页面done~
laravel框架新建页面流程
1、什么是路由
路由:当用户访问一个URL地址时,浏览器请求相应的页面,这其中路由控制着资源和URI的对应关系。
在laravel中路由文件routes.php用于放在app/Http/下。上节例子中Hello world写在welcome.blade.php文件中,该文件位于laravel项目的根目录下,因此打开routes.php文件可以看到对应的路由是
Route::get('/', function () {
return view('welcome');
});
这段代码Route路由使用get方法,在根目录下返回一个视图,该视图就是放在resources下的views文件夹下的welcome文件。
写个小页面
在resources/views/下新建monday.blade.php文件,里面写‘今天周一’,在routes.php文件中写上以下代码
Route::get('monday', function () {
return view('monday');
});
浏览器中访问http://localhost:**/laravel/public/monday 可以看到刚刚效果。
ps:路由的请求方法有多重,get只是其中的一种,除此之外还有post,put,delete等多种方法
2、新建控制器
控制器负责从视图读取数据、控制用户输入、并且像模型发送数据
在laravel中新建控制器需要在Http/Controllers文件夹下,新建一个控制器文件。
新建步奏
1、在Http/Controllers文件夹下新建一个php文件命名为WeekController.php
在该文件中输入以下代码
<?php
namespace App\Http\Controllers;
use App\Week;
// 声明命名空间
// 创建一个类WeekController继承自控制器基类
class WeekController extends Controller
{
// 写一个方法
public function week()
{
return 'week';
}
}
2、将控制器与路由相关联
在routes.php中添加以下代码
Route::get('week','WeekController@week');
浏览器访问就可以看到网页中输出week。
3、新建视图
之前已经提到过视图页面放在resources/views/下
新建步奏
1、在该文件夹下新建一个week.blade.php文件,敲入
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>新建视图</title>
</head>
<body>
今天星期四
</body>
</html>
2、打开routes.php文件,敲入
Route::get('weekdemo',function(){
return view('week');
});
4、新建模型
laravel中模型是直接放在App目录下,模型是应用程序的主体部分,模型是对业务数据的封装用于实现业务逻辑。
在App目录下有一个默认的model叫做User.php。当我们需要建立自己的模型时可以新建一个自己的php文件,比如新建一个week.php。
里面会有下面三行代码
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
和控制器相似这个也是对命名空间的声明
然后敲入如下代码
class Week extends Model
{
public static function getWeek(){
return 'today is monday';
}
}
然后使用时在控制器中的week方法里return Week::getWeek();即可。