PHP开发需要用路由组件吗?作为过来人分析给你听听

时间:2024-04-11 12:02:02

本文为远怀学堂原创,纯精品干货

PHP 在WEB开发或者API后台服务器接口开发时,简单易用并且快捷,受到很多程序开发者的喜欢,PHP不比Java的规范约定那么多,可以*发挥,有时想怎么用就怎么用。

Java开发有很多的成熟的框架,像Spring、Spring MVC、Mybatis、Spring Boot、Struts等等,使用框架就要遵守框架的使用约定。

而PHP开发过程有很多的组件,可以*的去搭配组件,没有那么强的约束,本文给大家讲一讲用PHP开发时是否考虑使用路由组件。

1. 首先来看下传统的PHP开发中请求/返回的方式

传统的PHP开发中请求/返回是基于文件系统的,也就是一个请求可以对应到一个php脚本去处理。

PHP开发需要用路由组件吗?作为过来人分析给你听听

【基于文件系统的请求返回】

比如将PHP代码部署在服务器中的/var/www-data/目录下,那么用户请求/about.php时会查找/var/www-data/目录下的about.php,找到并返回给用户。

2. 再来看下路由是什么及路由的作用

路由简单来说就是所有的网络请求汇聚到一个节点,再由这个节点进行请求的分发,这个节点就是一个路由节点。

PHP开发需要用路由组件吗?作为过来人分析给你听听

【路由的汇聚-分发模型】

家里用的路由器上网,也可以这么理解

这种网络硬件的模型同样也可以使用在软件开发中。

在WEB开发或者API后台服务器接口开发中,可以使用路由的这种概念模型去进行请求的汇聚与分发。

PHP开发需要用路由组件吗?作为过来人分析给你听听

【WEB开发或API后台开发中路由的汇聚分发作用】

路由相当于MVC(Model - View - Controller)框架中的C角色(Controller)。

3. 使用路由的优势劣势是什么?

路由的作用很明显:汇聚请求,统一入口,统一分发请求,隐藏细节

使用路由的优点:

1.使用路由可以规范统一请求入口

数据的请求都汇聚到路由的入口文件(一般为index.php),然后通过一张路由配置表进行数据的分发处理。

2.程序整体结构清晰

路由负责汇聚分发请求,具体的业务处理是由具体的代码文件处理,逻辑清晰,职责分明。

3.可以美化URL或定制URL

用户访问请求的URL地址可以提前设计好格式,然后配置在路由表,比如可以实现统一的不带.php后缀结构的URL等。

使用路由的缺点:

1.失去了原有的灵活度

不使用路由时,可以使用基于文件系统,一个请求对应于一个文件去处理,简单、好实现,现在为了使用路由,还要额外去维护一个路由表,每增加一个请求或删除一个请求都需要去修改路由表。

2.学习使用成本

需要花一定的时间去寻找合适的路由组件,以及需要学会去使用它。

3.性能

增加了路由的汇聚、转发之后对系统整体的性能会有一点点的影响,因为增加了原本没有的路由查找匹配过程,但是对性能整体的影响并不大。

4. 那在开发中是否需要使用路由组件?

是否在项目中使用路由可以从:项目新旧以及项目开发规模两个维度来考虑下。

  1. 如果是老项目,那就不要考虑增加路由了,因为修改成本高了涉及到太多的URL修改,得不偿失。
  2. 如果是一个新的项目,项目规模中等以上,有多人参与开发,可以考虑使用路由组件,统一规范,好管理开发。
  3. 如果是个人(或很少人一起)开发的新项目的话,一般规模也不会大到哪里去,不太推荐使用路由,增加自己的开发成本、维护成本,不过喜欢尝鲜的人也可以去使用,感受下使用路由组件带来的好处。

本文是我做PHP开发过程中的一点经验的分享,具体在PHP开发中使用什么路由组件以及如何去使用路由组件,我们后续教程中会给大家讲解。

 

本文为远怀学堂原创,觉得有用,有价值就收藏、转发吧,同时记得关注「远怀学堂」,我们专注于「原创·精品」的IT技术教程,图文 & 视频。