QuickFormで入力値にフィルタを適用する[Pear::QuickForm]

メモ:  Category:pear

QuickForm で入力値にフィルタを適用するには、 applyFilter 関数を使用します。

applyFilter は、ここの要素又は全ての要素に適用できます。

$objQF->applyFilter('__ALL__','trim');

上記スクリプトは、全ての要素にtrim関数を実行するように指定しています。 trim関数を通すことによって空白のみの入力や不要な値を防ぐことができます。

個々の要素にフィルタを指定する場合

$objQF->addElement('text', 'txtMSG', 'メッセージ');
//ルールの追加
$objQF->addRule('txtMSG','メッセージを入力してください。','required');
//フィルタ
$objQF->applyFilter('txtMSG','addslashes');

上記のようにフィルタを設定します。

第二引数には、ユーザー定義関数を指定することもできます。

また、arrayとしてオブジェクトとメソッド名を渡すことによりチェックオブジェクトのメンバ変数でフィルタすることもできるようです。

bluenote by BBB