我在config中的form_validation.php中有我的规则,它调用MY_Form_validation.php中的函数,该函数扩展了CI_Form_validation .
form_validation.php规则:
array(
'field' => 'phone',
'label' => 'Phone',
'rules' => 'is_valid_phone'
),
MY_Form_validation.php方法:
public function is_valid_phone($phone)
{
echo 'phone validation: '.$phone;
return preg_match("/\(?\d{3}\)?[-\s.]?\d{3}[-\s.]\d{4}/x", $phone) ? true : false;
}
form_validation中的其他规则不会调用is_valid_phone,而is_valid_postal_code在开发和 生产环境 方面工作正常 . 出于某种原因,这两种方法适用于开发但不适用于 生产环境 . php版本略有不同 . 5.2.8关于dev和5.2.17 on prod . 所有文件都是同步的,我可以确认一下 . 我在is_valid_phone方法中放了一个echo语句,它显示在dev上,但不显示在prod上 .
我不知道问题是什么 . 任何的想法?
多谢你们 .
1 回答
这可能是回声 . 在显示某些标头之前,您有某种缓存或回显出现问题 .
尝试将回显值放在字符串上并确保正常工作 . 您也可以尝试使用load-> view方法 . 试试这个:
并且视图just_echo.php将是: