我应该使用标准HTML的表单助手吗?

时间:2013-02-15 04:43:07

标签: html codeigniter zend-framework helpers

使用这些类是否有利于性能或安全性问题,因为我们知道HTML应该是纯HTML格式。

示例:

CodeigniterFramewỏrk中的

 echo form_input(array('name' => 'one'));

被称为

<input type="text" name="one"/>

哪个更好?

2 个答案:

答案 0 :(得分:4)

从Phil Sturgeon博客复制:
额外的抽象层与辅助扩展/覆盖相结合,可以非常轻松地在整个应用程序输出中更改简单的逻辑位,而且操作简单。

为了解释,我将使用一个例子。

<form action="<?php echo site_url('controller/method'); ?>" method="post">
vrs
<?php echo form_open('controller/method');

首先,您将看到标准HTML方式,并使用site_url()函数创建表单操作的链接。其次,你会看到form_open()标签 - 在这个例子中它也是短的,wahey!

我希望在我的所有表单中设置accept-charset="UTF-8",以帮助保持我的所有数据UTF-8 in CodeIgniter。 如果我只使用HTML,那么我必须通过所有我的表单并在自己中添加,这将浪费我可以在酒吧度过的时间。

相反,由于CodeIgniter允许您扩展帮助程序,我只是在form_open()中创建了自己稍微修改过的application/helpers/MY_form_helper.php,其中包含此逻辑。
因为我使用PHP来包装我的有用数据,所以我可以做一个简单的更改并更新我的所有标签。

主要问题是人们正在查看这些HTML辅助函数,并将它们看作纯粹的不同语法。

完整文章访问:
http://philsturgeon.co.uk/blog/2009/12/Why-CodeIgniter-HTML-helper-functions-rock

答案 1 :(得分:2)

这是一个很好的问题。我认为最终归结为个人偏好。我个人不喜欢使用表单助手,但我当然可以看到使用它们的好处,如果我正在开展一个大项目,我会尝试使用它们。因为像Phil Sturgeon所说,当你想对所有表格字段进行网站广泛更改时,它会更容易。

虽然我有兴趣看看使用表单助手功能是否会影响性能。当然,使用PHP生成HTML比仅仅正常编写HTML有一个性能影响吗?