我正在编写我的第一个真正的PHP网站,我想知道如何使我的代码对我自己更具可读性.我正在使用的参考书是PHP和MySQL Web Development 4th ed.
上述书提供了三种分离逻辑和内容的方法:
我还没有选择任何这些,因为围绕这些概念缠绕我的大脑需要一些时间.但是,我的代码已成为前两个的混合体,因为我只是在这里复制粘贴并随时修改.
在演示方面,我的所有页面都有这些常见元素:标题,顶部导航,侧边栏导航,内容,右侧边栏和页脚.
本书中基于函数的示例表明我可以使用这些显示函数来处理所有演示示例.所以,我的页面代码将是这样的:
display_header();
display_navigation();
display_content();
display_footer();
Run Code Online (Sandbox Code Playgroud)
但是,我不喜欢这个,因为本书中的示例将这些打印语句与HTML和PHP混合在一起,如下所示:
echo "<tr bgcolor=\"".$color."\"><td><a href=\"".$url."\">" ...
Run Code Online (Sandbox Code Playgroud)
我宁愿在中间使用带有PHP的HTML,而不是相反.
我正在考虑制作我的页面,以便在我的页面开头,我将从数据库中获取所有数据并将其放入数组中.我还将获取变量的数据.如果这些进程中有任何错误,我会将它们放入错误字符串中.
然后,在HTML代码中,我将使用foreach循环遍历这些数组并显示内容.在某些情况下,会显示一些变量.如果存在设置的错误变量,我将在适当的位置显示该变量.
(作为旁注:我不明白的是,在大多数示例代码中,如果某些数据库查询或whatnot给出错误,总会有:
else echo 'Error';
Run Code Online (Sandbox Code Playgroud)
这让我感到困惑,因为当示例代码出错时,有时甚至在HTML开始之前就会回显......)
对于使用过ASP.NET的人来说,我已经习惯了代码隐藏文件和lblError,我正在尝试做类似的事情.
我还没弄明白的是我怎么能做到"先做逻辑,然后再进行演示"这样的事情,这样我就不必复制所有页面中的导航逻辑和导航演示.
我应该做一些包含文件还是我可以在这里使用函数但有点不同?有没有什么好文章可以更彻底地解释这些分离表达和逻辑的"风格".这本书我只有一个关于这个东西的段落.
我在想的是我在谈论一些关于PHP编程的概念或方法,但我还不知道它们的用语.
我知道这不是一个直截了当的问题,我只是需要一些帮助来组织我的想法.