私は、CI_Form_validationを拡張するMY_Form_validation.phpの関数を呼び出すconfig内のform_validation.phpに私のルールを持っています。CodeIgniterの検証ルール
form_validation.phpルール:
array(
'field' => 'phone',
'label' => 'Phone',
'rules' => 'is_valid_phone'
),
MY_Form_validation.php方法:DEVと生産にis_valid_phoneとis_valid_postal_code作業罰金を呼び出すことはありませんform_validationで
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;
}
他のルール。何らかの理由で、これらの2つのメソッドは開発環境で動作しますが、運用環境では動作しません。 PHPのバージョンは少し異なります。 5.2.8でdevおよび5.2.17でprod。すべてのファイルが同期されているので、確認できます。私は、is_valid_phoneメソッドにecho文を入れて、devに表示しますがprodには表示しません。
問題の内容がわかりません。何か案が?
ありがとうございます。
あなたは 'ます$ this-> set_message( "is_valid_phone" でそれを試してみました、「%sは無効です電話フォーマットXXX-XXX-XXXX "); – Henesnarfel
有効な電話のメッセージのlangファイルを設定しましたか? – Henesnarfel
$ CI-> form_validation-> set_message( 'is_valid_phone'、 'error'); $ CI-> form_validation-> set_message( 'is_valid_postal_code'、 'error'); – Chris