gpt4 book ai didi

php - 代码设计和结构

转载 作者:可可西里 更新时间:2023-11-01 13:28:32 24 4
gpt4 key购买 nike

最近有人强调(在我之前的问题中)我设计网络应用程序的方式并不理想。

请考虑以下事项。我在一个多用户网站上工作,该网站有许多不同的部分,包括个人资料和论坛以及支持票。结构如下:

包含或*required_once*的所有其他页面的主页面,我们将其称为home.php。

home.php 中,首先加载的内容之一是 router.php,它处理用户可能产生的每个 $_GET 和 $_POST,并且每个表单和流程都通过一个名为 $data_process 的主变量进行排序。 Router.php 本质上只是 $data_process 的一个巨大的 switch() 语句。这将解析所有数据并给出结果。

下一个包含的是 header.php,它不仅会处理将要加载的页面的必要变量,还会设置标题并准确决定要在那里显示的内容,例如菜单、用户信息和有关当前查看页面的信息(即主页 > 支持 > 查看票证)。

然后根据$page变量加载页面。一个简单的包含。

然后footer.php,然后关闭。

这样动态网站就创建好了。一位名叫@HorusKol 的用户告诉我这是不好的做法。我对这个网站非常满意,因为它是我用过的最精简、最容易编写的网站。如果这仍然是糟糕的代码设计?什么是完美的代码设计?

PS - 谁能给我推荐一些解释 PHP、MySQL 和设计结构的好书?

最佳答案

  • 这是糟糕的设计,因为您处理了很多在流程的其余部分可能不需要的数据。路由器应该只处理 url,post 数据的处理在其他地方处理。只包括你需要的东西,包括一切都会让事情变慢。
  • 更好的方法是在不同的部分构建更多应用。处理 url 的路由器,基于路由请求运行操作的 Controller ,处理所有 html 和页面的 View ,访问数据的模型。我想到了 MVC。
  • 世上没有完美的代码设计。

关于php - 代码设计和结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12855556/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com