Trim All Get And Post This Way

Here is a way to trim all variables received through $_POST and $_GET.

There are good reasons to trim user input: you do not need the spaces in the database, it avoids comparison problems, white space is probably unwanted.

A HelperClass contains the following code:

    public static function trimPostGet() {

        array_walk_recursive($_POST, function (&$val) { $val = trim($val); });

        array_walk_recursive($_GET, function (&$val) { $val = trim($val); });


In the application’s configuration file:

        'onBeginRequest' => array('HelperClass', 'trimPostGet'),

Any comment on using such method is welcome. Maybe you see some serious drawbacks ?

Other methods that are more Yii specific are:

  • a filter in a validation rule

  • beforeValidate of the model

but then you would have to do this for each and every input!