【发布时间】:2014-06-09 18:52:40
【问题描述】:
我正在编写一个数据库驱动的管理工具(实际上,它基本上只是一个用于管理数据库的 GUI)。我有相当多的 PHP,其中大部分都与纯 HTML 混合在一起,正在使用中,并且已经开始将所有内容分解成更小的部分以提高可读性。然而,虽然这可行,但我不知道这是否是一个好主意,无论是基于惯例还是性能。
这是一个例子。对于每个表单字段,此代码重复一堆:
<?php
print '<div class="form-group">';
print '<label>Host Description</label>';
print '<textarea name="Description" class="form-control" rows="3">'.$_GET["Description"].'</textarea>';
print '</div>';
...code is repeated for other fields...
?>
我已经开始把它改成这样了:
<div class="form-group">
<label>Host Description</label>
<?php print '<textarea name="Description" class="form-control" rows="3">'.$_GET["Description"].'</textarea>';?>
</div>
...code is repeated for other fields...
当我说代码重复时,我的意思是不同的表单域和表单域类型一个接一个地显示。
这有意义吗?它使代码更具可读性,只有 需要 成为脚本的 PHP 部分的行。我不知道我正在打破什么样的约定或我正在接受什么样的性能打击。这是一个好主意吗?坏主意?
【问题讨论】:
-
只选择最易读的。
-
第二个更好/更具可读性,但您也可以检查用于分隔代码/层的MVC。
-
这很容易受到 XSS 攻击。在显示从用户那里获得的信息之前,您应该使用
htmlentities()。 -
该站点仅在内部网络上可用(在令人讨厌的高安全性背后),但我将包括 htmlentities 调用,因为它似乎是常态。
-
@MatthewJohnson s/
htmlentities/htmlspecialchars
标签: php html styles convention