当使用PHP进行开发时,有什么好方法可以从显示页面中删除代码。我经常需要让外部人员编辑我工作的页面。这些人通常会被大量的PHP块所困扰,他们还喜欢破坏我的代码。
我尝试将代码块移出到函数中,因此现在整个HTML中都分散着各种函数。随着某些页面变得越来越复杂,代码又变得像程序一样,而处理POST请求也变得可疑。
我在PHP开发方面应该怎么做得更好?
当使用PHP进行开发时,有什么好方法可以从显示页面中删除代码。我经常需要让外部人员编辑我工作的页面。这些人通常会被大量的PHP块所困扰,他们还喜欢破坏我的代码。
我尝试将代码块移出到函数中,因此现在整个HTML中都分散着各种函数。随着某些页面变得越来越复杂,代码又变得像程序一样,而处理POST请求也变得可疑。
我在PHP开发方面应该怎么做得更好?
你不需要一个“系统”来进行模板化。 通过将演示和逻辑分开,您可以自己完成它。 这样设计师就可以搞砸显示效果,但不会影响其背后的逻辑。
以下是一个简单的例子:
<?php
$people = array('derek','joel','jeff');
$people[0] = 'martin'; // all your logic goes here
include 'templates/people.php';
?>
现在这是people.php文件(你提供给你的设计师):
<html>
<body>
<?php foreach($people as $name):?>
<b>Person:</b> <?=$name?> <br />
<?php endforeach;?>
</body>
</html>
看一下一些流行的PHP框架如何使用模板。例子包括cakePHP、Zend Framework和Code Igniter。即使您不打算基于这些框架构建您的网站,模板设计模式也是一种很好的方式,可以将php代码与您的网页设计师分离开来,让他们专注于布局而不是功能。
我认为我想远离笨重的框架。只需要一些方法,通常可以使页面更易读,代码更清晰。
Stack Overflow希望我决定哪个答案最好,但“最好”的标准是主观的。谁能说出什么是“最佳”实践呢?
如果你决定继续使用函数,可以从WordPress中汲取一些灵感。通过使模板更加细粒度化,你很可能可以将“程序”最小化。
此外,良好的工具(如HTML编辑器)可以帮助设计师忽略你的PHP代码,并在不破坏代码的情况下进行设计。(但我没有建议,抱歉。)
另一种方法是创建自己的模板系统,而不是使用SMARTY,但这可能需要太长时间来创建一个满足你需求的可用系统,超出了简单地将类似%%VARIABLE%%的文本替换成文本的范围。
我们公司使用SMARTY,即使在模板中有很多代码,设计师也知道如何处理它。对于简单的CMS网站,我们使用ExpressionEngine,它使用类似HTML的标记将逻辑插入到模板中。
我通常使用include,因为它们可以非常有用地组织和分组函数。此外,请注释您的代码。没有什么比让别人看到您的工作并不知道为什么要这样做更糟糕的了。合理命名变量和函数也可以走得很远-例如:
$userName = "John Doe";
$dateOfBirth = "04/02/1982";
function calculateUserAgeFromBirth($userName, $dateOfBirth)
像这样命名变量还有助于最小化关于代码实际执行内容的注释。
关于这个话题可以说很多,但一个非常基本的起点是尽可能将代码移动到单独的文件中,然后使用 include 语句。