Php global trim $ _post

Could you trim all $ _POST vars? because I have a very long list right now to trim each var. It looks very unprofessional. I thought about finishing ($ _ POST); might work, but he didn’t:]

+3
source share
7 answers

you can do it with array_map:

$_POST = array_map('trim', $_POST);
+26
source

Works with multidimensional arrays

array_walk_recursive($_POST, function (&$val) 
{ 
    $val = trim($val); 
});
+21
source
foreach($_POST as &$p) $p = trim($p);
+10

:

foreach($_POST as $key => $val)
{
    $_POST[$key] = trim($val);
}
+4

( ) array_map:

array_map('trim', $_POST);

, , :

array_map(array('My_Class', 'staticMethod'), $_POST); // Invoke a static method

array_map(array($myObject, 'objectMethod'), $_POST); 
// Invoke $myObject->objectMethod for each element of $_POST

$_POST . , array_map_recursive, PHP PHP. . , array_walk_recursive .

+2
+1

recursive , .

PHP

// Static $_POST Array.
$_POST['1']='one ';
$_POST['2']=' two';
$_POST['3'][]=' three   ';
$_POST['4'][][]=' four';
$_POST['5'][0][1][3]='five ';

// Recursive function for trim data.
function trim_recursive($array){
    $return = array();
    foreach($array as $key=>$values){
        if(is_array($values)===true){
            $return[$key] = trim_recursive($values);
        }
        else{
            $return[$key] = trim($values);
        }
    }
    return $return;
}

// Usage.
$_POST = trim_recursive($_POST);

// Output before trim.
array(5) {
  [1]=>
  string(4) "one "
  [2]=>
  string(4) " two"
  [3]=>
  array(1) {
    [0]=>
    string(9) " three   "
  }
  [4]=>
  array(1) {
    [0]=>
    array(1) {
      [0]=>
      string(5) " four"
    }
  }
  [5]=>
  array(1) {
    [0]=>
    array(1) {
      [1]=>
      array(1) {
        [3]=>
        string(5) "five "
      }
    }
  }
}

// Output after trim.
array(5) {
  [1]=>
  string(3) "one"
  [2]=>
  string(3) "two"
  [3]=>
  array(1) {
    [0]=>
    string(5) "three"
  }
  [4]=>
  array(1) {
    [0]=>
    array(1) {
      [0]=>
      string(4) "four"
    }
  }
  [5]=>
  array(1) {
    [0]=>
    array(1) {
      [1]=>
      array(1) {
        [3]=>
        string(4) "five"
      }
    }
  }
}
0

Source: https://habr.com/ru/post/1716133/


All Articles