2012-01-21 2 views
0

"decimal"に対して自分のフィールドを検証していますが、私はEUROをサポートしたいと思います。ユーロが小数点またはカンマを持つことができるのを見て、フィールドを検証するにはどうすればよいですか?私のDBには、私はあなたが小数を検証するために使用される小数点メソッドをオーバーライドすることができます。このファイルでMY_Form_validation.phpCodeigniterでは、フォーム検証でユーロ通貨を受け入れる方法はありますか?

呼ば/application/libraries/でファイルを作成する必要がINTにすべてを変換し、100

答えて

2

を掛けるつもりです。あなたのファイルは、以下の

<?php if (! defined('BASEPATH')) exit('No direct script access allowed'); 

class MY_Form_validation extends CI_Form_validation { 
    /** 
    * Decimal number 
    * 
    * @access public 
    * @param string 
    * @return bool 
    */ 
    function decimal($str) 
    { 
     return (bool) preg_match('/^[\-+]?[0-9]+[\.,][0-9]+$/', $str); 
    } 
} 

// END Form Validation Extension Class 

/* End of file MY_Form_validation.php */ 
/* Location: ./application/libraries/MY_Form_validation.php */ 

のようになります。この方法と元の違いは、中央に[\.,]です。元のファイルには、それだけでちょうど期間を可能\..

あなたは小数点以下の方法が機能する方法を変更したくない場合は、例えばeuroに名前を変更してからちょうど検証ルールとしてeuroを追加することができます。

関連する問題