3

使用这些类对性能或安全问题有好处吗,因为我们知道 HTML 应该是纯 HTML。
例如

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

好于

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

那我们为什么要使用

echo form_input('username');
4

2 回答 2

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);?>" />

注意:如果您使用此页面中列出的任何表单辅助函数,表单值将自动准备好,因此无需调用此函数。仅当您创建自己的表单元素时才使用它。

于 2012-02-29T12:14:25.670 回答
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" />

等等等等 ...

于 2012-02-29T08:28:17.687 回答