一般php的入口在哪,PHP单入口是否是必须的

本文探讨了一个游记网站采用单入口或多入口架构的选择问题。作者分析了两种架构的特点及适用场景,尤其关注于代码复用性和性能提升。

之前做的一些项目,一般自己整理结构的时候都这么来:

/application

____/pc

________/controllers

________/views

____/mobile

________/controllers

________/views

/system

____/library

____/models

____/services

____system.php

/public

____/pc

________/assets

________index.php

____/mobile

________/assets

________index.php

/upload

/data

(不好意思,这个神编辑器的 UL/OL 真的用不来)

application:应用目录,system:系统目录,public:网站入口,upload:上传目录,data:缓存session等。

主域名绑定到 /public/pc 下,移动域名绑定到 /public/mobile 下,各自的 index.php 定义各自 application 路径,来给路由指明相应的 /Controllers 和 /views,另外都require 系统入口 /system/system.php 来实现常量定义、初始化和启动应用。

因为是一个数据库,所以 /models 放到了 /system 里面公用,model 只是单纯的表映射和 set/get/CURD 方法,为了最大程度的复用(比如 pc 站和移动站都需要某个模块的发布功能),业务操作直接移到 /services 里面,action 只做最简单的参数过滤、调用 service 执行业务、redirect。

问题来了:

最近打算做一个游记类的网站,可以肯定的是只有 pc 端和移动端,暂不考虑 APP 应用,本来是考虑按照上面的单入口来的,但是网站功能真的很有限,几个入口完全可以胜任,而且多入口省去了路由操作直接进业务逻辑可以压榨一部分性能,单入口的参数虽然可以用 htaccess 改一下但肯定没有多入口简洁明了。多入口每个头里面 require 系统核心 system.php 一样可以实现系统初始化、参数过滤、类库函数库加载的一些功能。

因为网站完全自己一个人做,团队协作根本不存在,那这样的:多入口+系统入口包含+services+DAO 是不是一样可以做到 pc 站和移动站的复用(感觉按照最上面的形式,不一样要写两遍 Controllers 么...),另外最重要的一点,有没有单入口是不是影响负载均衡包括数据库主从等的实现呢(因为从来没有过这方面的场景)?

其实我主要纠结的就是两点:1、复用(直接写死的话混写一路到头当然效率要高一些,但是移动端再重新写一遍确实有点傻);2、性能性能性能,和将来可能的抗压能力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值