我为我和一些朋友开了一个小项目来编辑多数据库(mysql)中的几个表。现在这个项目已经超过了几百页,虽然在外面看起来令人难以置信,但它却在内心感到凌乱。没有结构。这就是我们所拥有的:
3个数据库 几百个表组成了三个DB。 php项目旨在让您轻松编辑这些表而不是手动编辑。
是否有人建议如何组织代码。我开始看到重复包含在文件的顶部,某些代码开始重复(我有更常见的功能) 我想远离“CLASS”类型编程(除非你觉得这可能是最好的)只是因为它是一个开源项目而我的一些朋友在php上并不那么出色,所以想要保持简单。但对于组织,我可以去上课风格。
我最担心的是,大多数页面(html部分)都是大量的剪切和粘贴。所以每个页面都像另一个页面。不确定如何有效地巩固这些。我认为一旦这部分被弄清楚,PHP代码也将被修剪。
感谢
答案 0 :(得分:1)
我会在这里寻找面向对象的风格(或者你说的类型编程:))。这将大量削减您的代码,如果您需要更改多页上的功能而不是更改多个功能,它也会有所帮助。
从长远来看,你的朋友会感谢你,特别是当他们接受OO的善意时。
答案 1 :(得分:1)
如果您的意思是“OASS(面向对象编程)”中的“CLASS”,那肯定是您应该考虑的事情。一旦你习惯了,在你发现自动加载器时你会知道原因,在对象中安排方法非常方便。
您还应该了解MVC框架的市场。 MVC代表模型,视图和控制器,是应用程序中相当常见的模式。我建议看看CodeIgniter,即使没有广泛的PHP职业生涯,也很容易上手。
如果你有任何机会坚持100%的解释,换句话说:意大利面和功能。我将所有内容拆分为按功能区域分组的文件。例如:media.php,database.php等。看看WordPress和wp-includes文件夹,看看他们是如何解决的。祝你好运!
答案 2 :(得分:1)
你可以在这里做很多不同的事情。这里有三个让你入门:
你将不得不转向面向对象的编程,特别是如果你想要走代码组织的路线。始终遵守DRY原则。
考虑到这一点,请查看一个好的frameowrk。我建议CodeIgniter。如果您正确使用它,MVC设计模式将删除代码中的大量冗余。如果你选择不遵循框架路线,我肯定会看一些模板库来帮助你。
Normalize your database。这有助于您删除多余的型号代码。
答案 3 :(得分:0)
我的建议是为所有数据库字段使用类似XML的抽象层,并在您可以理解的地方使用OOP。您可以使用XML-File-configuration来分离数据库逻辑,您可以使用php XML-extension来解析它。现在,如果您在内存中有XML树,则可以使用引擎再次解析它以输出html内容。我经常使用它,例如TYPO3也使用它,但不是XML而是非常大的数组。并且使用它还可以创建自己的XML语言和属性。它有点像XLST,但不是那么深,但它比TYPO3更好。