ThinkPHP6新增‘’多应用‘’与ThinkPHP5有啥区别呢

作者 : OO资源中心 发布时间: 2020-05-11 文章热度:431 共1565个字,阅读需4分钟。 本文内容有更新 字体:

ThinkPHP6中新增了一个叫做“多应用”的名词,这个在ThinkPHP5中并没有,那么这个是干啥的呢?来听php中文网投稿作者王雪芹唠叨唠叨……

首先看下ThinkPHP6官方手册关于多应用的目录结构:

├─app 应用目录
│  ├─index              主应用
│  │  ├─controller      控制器目录
│  │  ├─model           模型目录
│  │  ├─view            视图目录
│  │  ├─config          配置目录(优先)
│  │  └─ ...            更多类库目录
│  ├─admin              后台应用
│  │  ├─controller      控制器目录
│  │  ├─model           模型目录
│  │  ├─view            视图目录
│  │  ├─config          配置目录(优先)
│  │  └─ ...            更多类库目录
│
├─public                WEB目录(对外访问目录)
│  ├─admin.php          后台入口文件
│  ├─index.php          入口文件
│  ├─router.php         快速测试文件
│  └─.htaccess          用于apache的重写
│
├─config                应用配置目录
│  ├─index              index应用配置
│  └─admin              admin应用配置
│
├─view                视图目录
│  ├─index              index应用视图目录
│  └─admin              admin应用视图目录
│
├─route                 路由定义目录
│  ├─index              index应用路由定义目录
│  └─admin              admin应用路由定义目录
│
├─runtime               运行时目录
│  ├─index              index应用运行时目录
│  └─admin              admin应用运行时目录

(来源于:)

哎呀,这样一看发ThinkPHP6的多应用也不过如此,一个前台index应用,一个后台admin应用,这就叫多应用了。想当年,我们用ThinkPHP5那也开发过前台应用index、后台应用admin,这又啥区别呢?

区别1:就是必须通过下载后才能使用。

ThinkPHP6框架默认下载后是单应用,要想使用多应用就要下载:

composer require topthink/think-multi-app

区别2:路由定义必须在当前的应用下。

我们知道ThinkPHP5的时候,我们可以在根目录下的路由文件定义,但是ThinkPHP6后必须在应用目录下定义路由。

区别3:ThinkPHP6支持应用入口。

我们在ThinkPHP6中可以对某个应用单独设置入口文件,比如admin应用我可以设置admin.php入口文件来访问。

区别4:域名绑定应用。

举个例子ThinkPHP5的时候我们定义www.a.com/index/index/company.html的路由后,可以实现这样的效果www.a.com/company.html

但是ThinkPHP6你会发现怎么设置路由,index应用都去不掉,始终是www.a.com/index/company.html,这个可咋整?

那么解决方案就可以用到了域名绑定应用了,我们在config/app.php 配置文件中定义域名和应用的绑定,如下方式:

'domain_bind' => [
'www.a.com' => 'index', // 域名绑定到www应用
'admin.a.com' => 'admin', // admin绑定到后台应用
],

这样我们就可以用www.a.com/company.html来访问了。

最后:

总的来说,ThinkPHP6的多应用相对比ThinkPHP5还是有比较大的进步,虽然在第一次使用麻烦一点需要composer下载,但是这不影响我们对ThinkPHP6多应用的青睐。

【推荐教程】

1.

2.

相关推荐: 基于Laravel开发的在线点播系统MeEdu

下面由教程栏目给大家介绍基于Laravel开发的在线点播系统“MeEdu”,希望对需要的朋友有所帮助! https://github.com/Qsnh/meedu 作者前言: 随着知识付费领域的兴起,尤其是知识付费领域的龙头“得到”的成功,知识付费领域俨然成为…


关注微信公众号『OOINK』

第一时间了解最新资源动态关注OO.INK不迷路~

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
下载资源需要解压密码,解压密码是什么?
如下载的资源需要解压密码,请查看下载页右侧查找解压密码;
如没有解压密码请尝试默认解压密码:www.oo.ink 或者 oo.ink
或者联系我们获取解压密码!
1、本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2、分享目的仅供大家学习和交流,请不要用于商业用途!
3、本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
4、如有链接无法下载、失效或广告,请联系管理员处理!
5、本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!

OO.INK资源网 » ThinkPHP6新增‘’多应用‘’与ThinkPHP5有啥区别呢
+已在风雨中度过
为兴趣而改变,为梦想而努力!
+已坚持更新
时时更新,确保最新~

开通SVIP,畅享全站资源下载~

立即了解