<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Laravel on Foam 的博客</title>
    <link>https://blog.foamzou.com/categories/Laravel/</link>
    <description>Recent content in Laravel on Foam 的博客</description>
    <generator>Hugo</generator>
    <language>zh-cn</language>
    <lastBuildDate>Sat, 12 Sep 2015 11:22:21 +0800</lastBuildDate>
    <atom:link href="https://blog.foamzou.com/categories/Laravel/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Laravel5.1学习之旅(二) 路由</title>
      <link>https://blog.foamzou.com/posts/learn-laravel5-1-step-two-route/</link>
      <pubDate>Sat, 12 Sep 2015 11:22:21 +0800</pubDate>
      <guid>https://blog.foamzou.com/posts/learn-laravel5-1-step-two-route/</guid>
      <description>&lt;h1 id=&#34;laravel51学习之旅二-路由&#34;&gt;Laravel5.1学习之旅(二) 路由&lt;/h1&gt;
&lt;p&gt;上一篇：&lt;a href=&#34;https://blog.foamzou.com/posts/learn-laravel5-1-step-one-install-laravel/&#34;&gt;Laravel5.1学习之旅(一) 安装Laravel5.1&lt;/a&gt; 访问一个页面，你可以不需要Model、View和Controller，但必然需要路由(Route) 本文示例代码可能会涉及到Controller、Model、View，这些内容将会在下一篇介绍，对于学习本文没有影响&lt;/p&gt;
&lt;h3 id=&#34;路由是什么&#34;&gt;路由是什么&lt;/h3&gt;
&lt;p&gt;学过计算机网络的都知道，路由负责将接收到的数据包拆解出目标ip地址等信息，然后根据路由表进行分组转发给下一个目标。 Web框架中的路由也是如此，它将请求中的URL拆解为控制器、方法、参数等信息，然后调用相应的控制器文件来处理业务，最后将带有数据的视图呈现给用户。当然，Laravel显得更为简单粗暴，它直接提供了一个路由表&lt;code&gt;app/Http/route.php&lt;/code&gt;，你可以在该文件定制你的路由规则。这样你的路由非常直观且灵活，代价就是当你要添加一个新的请求时必须要在该文件添加一条新的路由规则。&lt;/p&gt;
&lt;h3 id=&#34;最简单的路由&#34;&gt;最简单的路由&lt;/h3&gt;
&lt;p&gt;废话懒得说，直接上代码：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Route::get(&amp;#39;/&amp;#39;,function(){
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    return &amp;#39;Hello foam&amp;#39;;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;});
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;可以看到，上面的Route::get需要传递两个参数，第一个是URL，第二个是闭包方法。因为是闭包方法，你可以在里面写业务逻辑，这里我们只简单返回一个Hello foam。 在浏览器中输入&lt;code&gt;http://foam.com&lt;/code&gt;（网站根目录），页面会打印出Hello foam。&lt;/p&gt;
&lt;h3 id=&#34;基础路由&#34;&gt;基础路由&lt;/h3&gt;
&lt;h5 id=&#34;基本路由&#34;&gt;基本路由：&lt;/h5&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;?&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;php&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;//以get方法访问http://foam.com/home时将执行HomeController里的index方法
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;Route&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;home&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;HomeController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;//除此之外还有post、put、delete等方式。一般用得比较多的是get和post
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;Route&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;home&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;HomeController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;Route&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;put&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;home&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;HomeController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;Route&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;delete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;home&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;HomeController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h5 id=&#34;带有参数的路由&#34;&gt;带有参数的路由：&lt;/h5&gt;
&lt;p&gt;很多场景的url都是带有参数的，例如文章详细页&lt;code&gt;http://foam.com/article/9434&lt;/code&gt;&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Route::get(&amp;#39;article/{id}&amp;#39;,&amp;#39;ArticleController@detail&amp;#39;);
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;如此一来，ArticleController的detail方法便能接收到id参数，具体方法我们下一篇介绍&lt;/p&gt;
&lt;h5 id=&#34;路由群组&#34;&gt;路由群组：&lt;/h5&gt;
&lt;p&gt;路由群组一方面将一组相关路由写在一块，提高了代码可读性；另一方面简化了代码，可利用中间件统一处理相关代码 举个例子，假如我们需要写个后台管理，URL为&lt;code&gt;http://foam.com/backend/***/&lt;/code&gt;，命名空间为&lt;code&gt;Admin&lt;/code&gt;，且需要使用中间件&lt;code&gt;AdminAuth&lt;/code&gt;对后台管理系统的所有请求作权限验证。 没有群组，需要这么写：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Route::get&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;backend/aaaaa&amp;#39;&lt;/span&gt;, &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;middleware&amp;#39;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&amp;gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;AdminAuth&amp;#39;&lt;/span&gt;, &lt;span class=&#34;s1&#34;&gt;&amp;#39;Admin\AaaController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;])&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Route::get&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;backend/bbbbb&amp;#39;&lt;/span&gt;, &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;middleware&amp;#39;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&amp;gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;AdminAuth&amp;#39;&lt;/span&gt;, &lt;span class=&#34;s1&#34;&gt;&amp;#39;Admin\BbbController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;])&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Route::get&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;backend/ccccc&amp;#39;&lt;/span&gt;, &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;middleware&amp;#39;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&amp;gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;AdminAuth&amp;#39;&lt;/span&gt;, &lt;span class=&#34;s1&#34;&gt;&amp;#39;Admin\CccController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;])&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;现在让我们的群组重新演绎：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Route::group&lt;span class=&#34;o&#34;&gt;([&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;prefix&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&amp;gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;backend&amp;#39;&lt;/span&gt;,&lt;span class=&#34;s1&#34;&gt;&amp;#39;namespace&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&amp;gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Admin&amp;#39;&lt;/span&gt;,&lt;span class=&#34;s1&#34;&gt;&amp;#39;middleware&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&amp;gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;AdminAuth&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;,function&lt;span class=&#34;o&#34;&gt;(){&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Route::get&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/aaaaa&amp;#39;&lt;/span&gt;,&lt;span class=&#34;s1&#34;&gt;&amp;#39;AaaController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Route::get&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/bbbbb&amp;#39;&lt;/span&gt;,&lt;span class=&#34;s1&#34;&gt;&amp;#39;BbbController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Route::get&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/ccccc&amp;#39;&lt;/span&gt;,&lt;span class=&#34;s1&#34;&gt;&amp;#39;CccController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;})&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;群组里prefix是URL前缀，namespace是命名空间，middleware是中间件，这些都是可选的。 群组也是可以嵌套的，当部分页面需要同一个中间件处理时，可以这么做：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Route::group&lt;span class=&#34;o&#34;&gt;([&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;namespace&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&amp;gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Home&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;,function&lt;span class=&#34;o&#34;&gt;(){&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Route::get&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/&amp;#39;&lt;/span&gt;, &lt;span class=&#34;s1&#34;&gt;&amp;#39;PageController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Route::get&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;task/{id}&amp;#39;&lt;/span&gt;,&lt;span class=&#34;s1&#34;&gt;&amp;#39;TaskController@detail&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Route::group&lt;span class=&#34;o&#34;&gt;([&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;middleware&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&amp;gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;UserAuth&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;,function&lt;span class=&#34;o&#34;&gt;(){&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        Route::get&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;myhome&amp;#39;&lt;/span&gt;,&lt;span class=&#34;s1&#34;&gt;&amp;#39;MyhomeController@index&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        Route::get&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;myhome/taskDetail/{id}&amp;#39;&lt;/span&gt;,&lt;span class=&#34;s1&#34;&gt;&amp;#39;MyhomeController@taskDetail&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     &lt;span class=&#34;o&#34;&gt;})&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;})&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Laravel5.1 目录结构解析</title>
      <link>https://blog.foamzou.com/posts/laravel5-1-dir-analysis/</link>
      <pubDate>Wed, 22 Jul 2015 00:06:38 +0800</pubDate>
      <guid>https://blog.foamzou.com/posts/laravel5-1-dir-analysis/</guid>
      <description>&lt;p&gt;学习一门框架，首先要了解的就是目录结构。对目录结构清晰就可以着手学习了~ 这里不作新特性的介绍，权当目录结构手册看吧。若发现有何不恰当的地方请联系我哦~ 注：写本文时参照的是&lt;code&gt;5.1.4&lt;/code&gt;版本&lt;/p&gt;
&lt;p&gt;目录或文件&lt;/p&gt;
&lt;p&gt;说明&lt;/p&gt;
&lt;p&gt;｜–　&lt;strong&gt;app&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;包含Controller、Model、路由等在内的应用目录，大部分业务将在该目录下进行&lt;/p&gt;
&lt;p&gt;｜　　｜–　Console&lt;/p&gt;
&lt;p&gt;命令行程序目录&lt;/p&gt;
&lt;p&gt;｜　　｜　　｜–　Commands&lt;/p&gt;
&lt;p&gt;包含了用于命令行执行的类，可在该目录下自定义类&lt;/p&gt;
&lt;p&gt;｜　　｜　　｜–　Kernel.php&lt;/p&gt;
&lt;p&gt;命令调用内核文件，包含commands变量(命令清单，自定义的命令需加入到这里)和schedule方法(用于任务调度，即定时任务)&lt;/p&gt;
&lt;p&gt;｜　　｜–　Events&lt;/p&gt;
&lt;p&gt;事件目录&lt;/p&gt;
&lt;p&gt;｜　　｜–　Exceptions&lt;/p&gt;
&lt;p&gt;包含了自定义错误和异常处理类&lt;/p&gt;
&lt;p&gt;｜　　｜–　Http&lt;/p&gt;
&lt;p&gt;HTTP传输层相关的类目录&lt;/p&gt;
&lt;p&gt;｜　　｜　　｜–　Controllers&lt;/p&gt;
&lt;p&gt;控制器目录&lt;/p&gt;
&lt;p&gt;｜　　｜　　｜–　Kernel.php&lt;/p&gt;
&lt;p&gt;包含http中间件和路由中间件的内核文件&lt;/p&gt;
&lt;p&gt;｜　　｜　　｜–　Middleware&lt;/p&gt;
&lt;p&gt;中间件目录&lt;/p&gt;
&lt;p&gt;｜　　｜　　｜–　Requests&lt;/p&gt;
&lt;p&gt;请求类目录&lt;/p&gt;
&lt;p&gt;｜　　｜　　｜–　routes.php&lt;/p&gt;
&lt;p&gt;强大的路由&lt;/p&gt;
&lt;p&gt;｜　　｜–　Jobs&lt;/p&gt;
&lt;p&gt;该目录下包含队列的任务类&lt;/p&gt;
&lt;p&gt;｜　　｜–　Listeners&lt;/p&gt;
&lt;p&gt;监听器目录&lt;/p&gt;
&lt;p&gt;｜　　｜–　Providers&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
