2012-02-29 55 views
3

因为我们知道HTML应该使用纯HTML,所以使用这些类是否有利于性能或安全问题。
例如我应该使用CodeIgniter html还是表单助手类?

<input type='text' .... /> 

优于

<?php 
echo '<input type="text" .... />'; 
?> 

那我们为什么要使用

echo form_input('username'); 
+1

这是一个“帮手”,意味着它有帮助。如果您不需要帮助,请自行完成工作,这是唯一的区别:)性能开销可以忽略不计 – 2012-02-29 08:00:39

回答

2

这是不是真的更好或性能的问题是什么,你真的需要更多的一个问题用你的表格做,尤其是动态数据。

例如,如果你使用:

<input type="text" name="username" value="<?php echo $username; ?>" /> 

要放一个默认或产生的价值从验证很容易做到:

echo form_input('username', $username); 

比如也使用:

echo form_open('email/send'); 

将生成正确的链接/路径到您的控制器,所以你不必担心,如果你移动o R改为你的应用程序目录,因为它会把正确的值:

<form method="post" accept-charset="utf-8" action="http:/example.com/index.php/email/send" /> 

等等等等......仅仅为了提供

3

助手功能,他们没有必要使用它始终是更好使用简单的HTML因为使用辅助肯定会创造上使用这些功能的另一方面优势服务器开销是你的代码变得精缩如读了这篇课文,我从他们的文件复制

form_prep()

允许您在不破坏表单的情况下安全地使用HTML和诸如 表单元素中的引号之类的字符。考虑这个例子:

$ string ='这是一个包含“带引号”文本的字符串。

<input type="text" name="myform" value="$string" />
由于上述 字符串包含一组引号,它将导致表单中断。该 form_prep功能转换HTML,以便它可以安全使用:

<input type="text" name="myform" value="<?php echo form_prep($string);?>" /> 

注:如果您使用任何的 此页面的表单值将自动坦然列出的形式辅助功能,所以有 不需要调用这个函数。仅当您创建自己的表单元素时才使用它。