0

POST ( $_POST)を介してシステムに入るすべての値をトリミングしたいとします
。または、より複雑なフィルターを適用することもできます。
それを行うための本質的な方法はありますか(Postは配列の配列にすることもできます...)
現在使用しているブートストラップファイルarray_walk_recursiveまたは同様のものを持っています。

function trim_array(&$elm){
    if(is_string($elm)){
        $elm=trim($elm);    
    }
}
array_walk_recursive($_POST,'trim_array');
4

3 に答える 3

0

おっしゃる通りarray_walk_recursive、使い勝手が良いです。もう1つは、私が使用することcall_user_funcを好むものです。

于 2012-07-20T18:26:54.520 に答える
0
    function recursive_trim($arr) {
        foreach($arr as $k => $v) {
            if(is_string($v)) {
                $arr[$k] = trim($v);
            } else if(is_array($v)) {
                recursive_trim($arr[$k]);
            }
        }
    }

    recursive_trim($_POST);
于 2012-07-20T18:20:21.453 に答える
0

値をトリミングするには、間違いなくあなたが望む方法を使用します -array_walk_recursiveが、パスワードなど、同じままにする必要がある値をトリミングしないようにしてください。

より複雑なフィルターについては、場合によると思います。使える場合もありますが、使えarray_walk_recursiveない場合もあります。

于 2012-07-20T18:20:33.133 に答える