想到了易用性和快速开发。使用 PHP 生成 HTML 实际上会降低性能,但我怀疑它会成为您的应用程序的瓶颈(无论如何您都可以缓存大部分 HTML 输出)。
例如,其中哪一个看起来更容易实现...
<?php
$name = 'abc';
$options = array('a', 'b', 'c');
$selected = 2;
?>
示例 1
<?php echo form::select($name, $options, $selected); ?>
示例 2
<select name="<?php echo $name; ?>">
<?php foreach($options as $value => $node): ?>
<option
value="<?php echo $value; ?>"
<?php echo ($selected === $index) ? ' selected="selected"' : NULL; ?>
>
<?php echo $node; ?>
</option>
<?php endforeach; ?>
</select>
我认为您会发现第一个示例更易于阅读,输入更少,并且保证每次都能正常工作(只要您正确编码)。
另外,如果你的老板说...
嘿 zdkroot,我们现在需要让所有密码 input 元素在 IE6 中都有一个红色边框。
...你可能会想...
我知道,我会使用input[type="password"] { ... }。哦等等,IE6 不支持这个?
...所以你可以进入你的 input 生成函数并在那里添加一个 class ,你可以在你的 CSS 中引用它。它还将使从 /> 更改为 > 也变得同步(如果您决定这样做的话)。