Laravel框架
文章平均质量分 76
野蛮秘籍
这个作者很懒,什么都没留下…
展开
-
Laravel框架学习(数据库高级查询)
1、连接查询(join)连接查询指的是将两张表或多张表关联到一起进行查询,获取一个表的行与另一个表的行匹配的数据。常见的连接查询包括内连接(等值连接)、左(外)连接、右(外)连接和交叉连接(完全连接)等。 我们将用户表users和文章表posts关联到一起进行查询,在此之前,我们先创建posts表,其字段及初始值如下: 其中user_id对应users表中的用户id。1.1 内连接内连接用于原创 2016-03-14 10:21:07 · 14846 阅读 · 0 评论 -
Laravel核心---IoC 容器
容器,字面上理解就是装东西的东西。常见的变量、对象属性等都可以算是容器。一个容器能够装什么,全部取决于你对该容器的定义。当然,有这样一种容器,它存放的不是文本、数值,而是对象、对象的描述(类、接口)或者是提供对象的回调,通过这种容器,我们得以实现许多高级的功能,其中最常提到的,就是 “解耦” 、“依赖注入(DI)”。本文就从这里开始。IoC 容器, laravel 的核心Laravel 的核心就是一转载 2016-03-28 11:31:00 · 787 阅读 · 0 评论 -
Laravel服务提供者
1、定义服务类 我们这里先定义一个绑定到容器的测试类TestService,为了对类的定义加以约束,我们同时还定义一个契约接口TestContract。 定义TestContract如下:<?phpnamespace App\Contracts;interface TestContract{ public function callMe($controller);}定义TestSer原创 2016-03-28 13:58:42 · 655 阅读 · 0 评论 -
Laravel--Facades门面
使用Laravel框架必不可少的会用到它很多强大的门面类(Facades),门面提供了一个“静态”接口到服务容器中绑定的类我们首先创建一个需要绑定到服务容器的Test类:<?phpnamespace App\Facades;class Test{ public function doSomething() { echo 'This is TestClass\'s m原创 2016-03-28 15:31:03 · 2257 阅读 · 0 评论 -
Laravel使用redis库
在.env文件中修改 CACHE_DRIVER=redis SESSION_DRIVER=redis 添加predis/predis库 第一种方法直接修改composer.json 在require里添加 “predis/predis”: “1.0.3” 第二种方法直接执行 composer require “predis/predis:1.0.3”注:如果遇到*Class 'Predi原创 2016-03-29 12:52:57 · 1622 阅读 · 0 评论 -
Laravel5.* 打印出执行的sql语句
打开app\Providers\AppServiceProvider.php,在boot方法中添加如下内容// 先引入DB use DB;// 或者直接使用 \DB:: DB::listen(function($sql, $bindings, $time) { dump($sql); });原创 2016-05-09 14:51:00 · 26051 阅读 · 0 评论 -
Laravel5.2 Auth认证退出失效
今天在做登陆认证时遇到了个问题,登录正常,但是退出的时候并没有清掉session,退出后还是处于登录状态。路由如下Route::group(['namespace' => 'Admin', 'middleware' => 'auth'], function() { Route::resource('admin/post', 'PostController');});// 登陆Route原创 2016-05-27 12:50:20 · 5642 阅读 · 0 评论 -
Laravel项目问题集锦
1、No supported encrypter found. The cipher and / or key length are invalid. 解决:cd 项目根目录php artisan key:generate// 执行完之后会生成一个key串,将生成的key复制到config/app.php替换82行的APP_KEY键值。'key' => env('APP_KEY', '8lE原创 2016-05-02 19:25:23 · 3541 阅读 · 0 评论 -
Blade模板变量使用集锦
所有的blade模板解析后的文件存在\storage\framework\views目录下1、读取配置// 读取config/blog.php中的title属性值{{ config('blog.title') }}2、分页// 调用分页paginate方法返回如下数据{{ $posts->currentPage() }} {{ $posts->lastPage() }}原创 2016-05-26 10:58:45 · 8558 阅读 · 0 评论 -
Laravel artisan常用命令集锦
1、控制器// 5.2版本创建一个空控制器php artisan make:controller BlogController// 创建Rest风格资源控制器php artisan make:controller PhotoController --resource// 指定创建位置 在app目录下创建TestControllerphp artisan make:controller Ap原创 2016-05-26 09:50:23 · 8258 阅读 · 0 评论 -
Laravel5.x启动过程分析
1、初始化Application// realpath(__DIR__.'/../') 为web应用目录// 如 D:\www\laravel5.1\$app = new Illuminate\Foundation\Application( realpath(__DIR__.'/../'));接下来调用 Application类的构造方法 /** * Create a原创 2016-03-24 14:49:19 · 3369 阅读 · 0 评论 -
Laravel框架学习(ORM<二>)
1、一对一一对一是最简单的关联关系,表示表A和表B的记录一一对应,比如一个用户对应一个社交账号,在演示该关联关系之前我们先创建一个社交账号表user_accounts:php artisan make:migration create_user_accounts_table --create=user_accounts编辑生成的迁移文件如下:<?phpuse Illuminate\Database\原创 2016-03-14 16:59:52 · 1019 阅读 · 0 评论 -
Laravel框架学习(ORM<一>)
1、什么是ORM?ORM,即 Object-Relational Mapping(对象关系映射),它的作用是在关系型数据库和业务实体对象之间作一个映射,这样,我们在操作具体的 业务对象时,就不需要再去和复杂的SQL语句打交道,只需简单的操作对象的属性和方法即可。ORM 两种最常见的实现方式是 ActiveRecord 和 DataMapper,ActiveRecord 尤其流行,在很多框架中都能看到原创 2016-03-14 15:01:03 · 3936 阅读 · 0 评论 -
Laravel框架学习(中间件)
1、中间件简介Laravel中可以把HTTP中间件看做“装饰器”,在请求到达最终动作之前对请求进行过滤和处理。中间件在Laravel中有着广泛的应用,比如用户认证、日志、维护模式、开启Session、从Session中获取错误信息,CSRF验证,等等。 中间件类默认存放在app/Http/Middleware目录下。2、中间件使用 自定义中间件类只需要定义一个handle方法即可,然后我们将主要原创 2016-03-09 14:37:47 · 5968 阅读 · 0 评论 -
laravel框架学习(路由)
laravel所有的路由都定义在/app/Http/routes.php文件中,视图定义在/app/resources/views/里1、路由基本使用实例1.1、默认首页Route::get('/', function () { return view('welcome');});当访问应用首页http://selfstudy.com的时候,返回/resources/views/we原创 2016-03-08 17:51:09 · 3512 阅读 · 0 评论 -
Laravel框架学习(CSRF)
CSRF攻击原理及其防护1、CSRF攻击是what? CSRF是跨站请求伪造(Cross-site request forgery)的英文缩写。具体了解请自行百度。2、Laravel中如何避免CSRF攻击 Laravel自动为每个用户Session生成了一个CSRF Token,该Token可用于验证登录用户和发起请求者是否是同一人,如果不是则请求失败。Laravel提供了一个全局帮助函数csr原创 2016-03-09 09:23:29 · 9103 阅读 · 0 评论 -
Laravel框架学习(RESTFul用法)
1、创建RESTFul风格控制器 运行artisan命令创建控制器 php artisan make:controller PostController 该命令会在app/Http/Controllers目录下生成一个PostController.php文件,该控制器内容如下:<?php namespace App\Http\Controllers; use Illuminate\原创 2016-03-09 16:01:14 · 3912 阅读 · 0 评论 -
Laravel框架学习(使用DB门面操作数据库 原生SQL)
1、连接数据库 Laravel中数据库配置文件为config/database.php,打开该文件,默认内容如下:<?phpreturn [ //默认返回结果集为PHP对象实例 //具体返回结果可参考PDO.php(php PDO文档) // 数组格式 FETCH_ASSOC 'fetch' => PDO::FETCH_CLASS, //默认数据库连接为my原创 2016-03-11 15:58:10 · 24842 阅读 · 2 评论 -
Laravel框架学习(Response)
1、Response篇 1.1 基本响应最基本的HTTP响应只需在路由闭包或控制器动作中返回一个简单字符串即可,但是具体业务逻辑中大部分响应都是在控制器动作中返回Response实例或者视图。Response是继承自 Symfony\Component\HttpFoundation\Response的 Illuminate\Http\Response类的一个实例,我们可以使用该实例上的一系列方法来原创 2016-03-11 13:26:42 · 16120 阅读 · 0 评论 -
Laravel框架学习(Request请求数据、Cookie、文件上传)
1、获取Request请求数据 Laravel中一般通过控制器方法依赖注入来获取当前请求的Request实例。 我们通过定义一个隐式控制器来进行本章节的测试。首先我们在routes.php定义路由如下:Route::controller('request','RequestController');然后我们在app/Http/Controllers下创建一个控制器RequestControlle原创 2016-03-10 17:08:08 · 22214 阅读 · 0 评论 -
Laravel框架学习(查询构建器操作数据库)
获取查询构建器很简单,还是要依赖DB门面,我们使用DB门面的table方法,传入表名,即可获取该表的查询构建器:$users = DB::table('users');这样我们就获取到了$users表的查询构建器,实际上,底层返回的是Illuminate\Database\Query\Builder的实例,我们对查询构建器的所有操作都是调用该实例对应类上的方法。1、新增数据使用查询构建器的inser原创 2016-03-11 17:14:29 · 1395 阅读 · 0 评论 -
Laravel框架数据迁移和填充
一、数据迁移 1、使用 Artisan 命令make:migration来创建一个新的迁移:php artisan make:migration create_users_table// 可以使用 --path指定生成的目标路径php artisan make:migration --path=app\providers create_users_table执行成功后会在database\mi原创 2016-05-05 15:34:47 · 3723 阅读 · 0 评论