文档章节

每天laravel-简单的运行流程

千锋php
 千锋php
发布于 2017/05/22 10:31
字数 607
阅读 30
收藏 0

第一天:开始学习laravel 框架 首先 了解 laravel的运行流程

 

第一步:包含自动加载文件

require __DIR__.'/../bootstrap/autoload.php';

 

composer 提供了一个方便、自动的生成类加载,对于我们的应用。我们需要利用它!我们简单的包含这个文件在我们的脚本文件中,这样我们就不会担心后面使用过程中需要手动加载了!

这种感觉让我们很放松!

第二步:加载app入口文件

$app = require_once __DIR__.'/../bootstrap/app.php';

打开灯!

我们需要 照亮PHP 发展,所以 让我们 打开灯!这个bootstraps 这个框架 并且 获取准备对于应用,然后 他可以加载应用 所以我们能运行 应用 返回 浏览器 并且 使我们的用户开心!

 

第三步:开始运行应用

一旦我们搭建一个应用,我们可以处理增加的请求通过内核,并且发送相关响应返回到客户端浏览器,创建和完美的应用我们我们准备的给用户。

一旦我们搭建应用,我们可以通过内核来处理请求,返回相关的相应给客户端浏览器,允许用户享用我们准备好的完美的应用。

 

3.1 获取实例化的内核程序!

$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);

::class 代表 获取完整的class名称!

$app->make 这里跟我们的linux有点相似! 就是生成相应的 类的实例化 

 

3.2 通过获取用户 请求 获取反馈数据 

$response = $kernel->handle($request = Illuminate\Http\Request::capture());

$request = Illumiate\Http\Request::capture(); 通过这个 获取函数 来捕获 用户的 请求/输入 信息

将 输入 信息作为 参数 发送给返回 信息 处理 部分

$response = $kernel->handle($request);

 

3.3 将返回信息格式化,输出

$response->send();

格式化输出,有可能是 Html 格式,或者 json格式!

 

3.4 终止 请求 及 反馈 数据

$kernel->terminate($request, $response);

 

对完成使命的 请求 及 相应数据 进行处理!

 

完整整个初始化流程!

 

 

简单的点说:

第一:准备自动化加载流程!

第二:准备应用入口文件

第三:实例化内核程序

第四:根据入口请求活动返回数据

第五:返回数据格式化

第六:清理相关数据。

© 著作权归作者所有

千锋php
粉丝 0
博文 4
码字总数 2311
作品 0
成都
私信 提问
Laravel 5.1 源码阅读

安装,和创建项目,都是通过Composer,简单,略过。 Entry && Kernel 网站入口文件,${Laravel-project}/public/index.PHP: 生成Request,处理Request(),生成Response,发送Resonse。常规...

botkenni
2016/10/09
50
0
推荐一个 PHP 管道插件 League\Pipeline

Pipeline 设计模式 水管太长,只要有一处破了,就会漏水了,而且不利于复杂环境弯曲转折使用。所以我们都会把水管分成很短的一节一节管道,然后最大化的让管道大小作用不同,因地制宜,组装在...

叶梅树
2018/07/09
0
0
产品开发与监控系统(项目/任务管理系统)

开发环境要求: 语言:php 5.6 数据库:mysql 5.7 基础框架:encore/laravel-admin 1.3.*(https://github.com/z-song/laravel-admin) 功能需求: 一、权限角色 1、业务员:发布流程 2、主管...

常青藤
2017/02/04
9
0
Laravel源码分析——一次Http请求到响应

1前言 在FastCGI协议下工作的php-fpm, 使用持续的进程来处理一连串的请求, 具体到某个请求的解析流程的时候, 如果不考虑扩展的方式, 基本上都是顺序的解析处理. 所以就算复杂如Laravel框架,...

hisense20112784
2017/08/22
0
0
Laravel5.3之Errors Tracking神器——Sentry

说明:Laravel之bootstrap源码解析中聊时提到过Sentry这个神器,并打算以后聊聊这款神器,本文主要就介绍这款Errors Tracking神器,Sentry官网有一句话个人觉得帅呆了: Stop hoping your us...

botkenni
2016/11/16
61
0

没有更多内容

加载失败,请刷新页面

加载更多

MongoDB系列-解决面试中可能遇到的MongoDB复制集(replica set)问题

关注我,可以获取最新知识、经典面试题以及微服务技术分享   MongoDB复制集(replica set):MongoDB复制集维护相同数据集的一组mongod进程,复制集是生产部署的基础,具有数据冗余以及高可用...

ccww_
24分钟前
2
0
SpringBoot系列:Spring Boot集成Spring Cache,使用RedisCache

前面的章节,讲解了Spring Boot集成Spring Cache,Spring Cache已经完成了多种Cache的实现,包括EhCache、RedisCache、ConcurrentMapCache等。 这一节我们来看看Spring Cache使用RedisCache。...

杨小格子
33分钟前
2
0
OpenJDK之CountDownLatch

OpenJDK8,本人看的是openJDK。以前就看过,只是经常忘记,所以记录下 图1 CountDownLatch是Doug Lea在JDK1.5中引入的,作用就不详细描述了, await()方法,如果还有线程在执行,那么当前线程...

克虏伯
39分钟前
3
0
简单编程

1.编写一个程序,提示用户输入名和姓,然后以“名,姓”的格式打印出来。 #include<stdio.h>int main(){char name[3];char family[3];printf("Please input your name and family:\n...

电子工程197沈志初
44分钟前
4
0
详解Mysql分布式事务XA(跨数据库事务)

在开发中,为了降低单点压力,通常会根据业务情况进行分表分库,将表分布在不同的库中(库可能分布在不同的机器上)。在这种场景下,事务的提交会变得相对复杂,因为多个节点(库)的存在,可...

slagga
48分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部