使用这些类对性能或安全性问题有好处,因为我们知道HTML应该是纯HTML格式 e.g。
<input type='text' .... />
优于
<?php
echo '<input type="text" .... />';
?>
那我们为什么要使用
echo form_input('username');
答案 0 :(得分:3)
form_prep()
允许您安全地使用HTML和字符,例如引号 形式元素没有突破形式。考虑这个例子:
$ string ='这是一个包含“引用”文字的字符串。';
<input type="text" name="myform" value="$string" />
由于以上原因 string包含一组引号,它会导致表单中断。该 form_prep函数转换HTML以便安全使用:
<input type="text" name="myform" value="<?php echo form_prep($string);?>" />
注意:如果使用中列出的任何表单助手函数 此页面的表单值将自动准备,因此有 无需调用此功能。只有在创建时才使用它 自己的形式元素。
答案 1 :(得分:2)
这不是一个更好或性能更好的问题,更多的是你需要对表单做些什么,特别是对于动态数据。
例如,如果您使用:
<input type="text" name="username" value="<?php echo $username; ?>" />
要从验证中提取默认值或生成值,更容易做到:
echo form_input('username', $username);
例如也使用:
echo form_open('email/send');
将为您的控制器生成正确的链接/路径,以便您移动或更改应用程序目录时不必担心它,因为它会输入正确的值:
<form method="post" accept-charset="utf-8" action="http:/example.com/index.php/email/send" />
依此类推......