首页 > 后端开发 > php教程 > php Laravel 框架之建立后台老板文件夹 二

php Laravel 框架之建立后台老板文件夹 二

WBOY
发布: 2016-06-13 11:58:27
原创
822 人浏览过

php Laravel 框架之建立后台文件夹 二

在前面的章节中我们讲解过如何在 Laravel框架中建立后台文件夹.

php Laravel 框架之建立后台文件夹


现在我们再添加一块内容.是关于自动加载的部分.

在我们app目录中还有个start目录.它里面这样写道:

In addition to using Composer, you may use the Laravel class loader to
load your controllers and models. This is useful for keeping all of
your classes in the "global" namespace without Composer updating.

我翻译一下:除了使用Composer,你还可以使用Laravel的类加载器来加载你的控制器和模型.

这对于让你的类在不使用Composer updating 的情况下处于全局的名字空间中非常有用.

我们这里有一个code fragment

ClassLoader::addDirectories(array(


app_path().'/commands',
app_path().'/controllers',
//app_path().'/controllers/admin',
app_path().'/models',
app_path().'/database/seeds',


));

对,很熟悉,这些文件夹都是我们经常用到的文件夹,控制器,命令.模型,数据库种子

这些文件夹中的内容就是可以自动加载到全局名字空间中的.

但是还多了一个我注释的内容.这个内容的目的是干什么呢..

就是让我们controllers目录中的admin中的控制器也同样具有全局的名字空间.这样我们就可以直接在路由表中通过

我们的控制器名字来接收了.

我测试了一下,确实成功了,而不再需要compoer dumpautoload

但是还是有个问题,如果admin文件夹中有一个控制器和外面的名字相同该怎么办?

我也同样做了一个实验,最终发现,它只会选择其中之一,至于到底选择哪一个,就看我们上面的那个加载的顺序了.

如果是

app_path().'/controllers',

app_path().'/controllers/admin',

那么外部的控制器有效,否则的话,admin文件夹里面的控制器有效.

结合之前写的这么多.其实最保险,也高大上的方法就是使用 名字空间.

但是编写起来也会更加复杂一点咯...小项目可以考虑我们的方法.大不了注意一下,别让这些控制器冲突就好了.

又不是没办法控制.对吧.

Do one thing at a time,and do well.

Best Wishes.


相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板