我的表单有 50 多种不同的文本输入。我想在表单验证库中使用 CodeIgniter 的验证(如修剪函数),而不为每个输入创建规则。是否可以将它们组合成一个规则,这样我就不必浪费时间一遍又一遍地编写相同的代码?
在视图中将文本字段名称更改为
group_name[your_txt_names]
<input name="group_name[your_txt_names]" value="" type="text" />
然后在控制器中,您可以创建一个函数。
$txt_bxes = $this->input->post("group_name");
$post_vals = array_map('trim', $txt_bxes);
现在您已经修剪了数组中的值。
Kumar_v 的想法是正确的,尽管实施起来有点愚蠢
$this->输入->post('var);只是读取 $_POST 并对其进行一些清理;验证规则仅从 $_POST 读取 var 并应用您的验证规则。
因此,如果您只想修剪所有 $_POST 变量,只需直接修剪 $_POST,然后您还可以运行其他验证。
解决方案:
$_POST = array_map('trim', $_POST);
或
// 获取所有帖子并将它们立即转储到变量中
$input = $this->input->post(null, true); $input = array_map('trim', $input);
由于帖子数据以数组形式出现,我希望这对您有帮助
$postData = $this->input->post();
array_walk($postData ,'myFunc');
function myFunc(&$value,$key){
$value = trim($value);
}