Using mysql_real_escape_string in a multidimensional array in php -


i working on big script generate string or array or multidimensional array want use mysql_real_escape_string array / string tried below code

function check($data) {     if(!is_array($data)) {         return mysql_real_escape_string($data);     } else if (is_array($data)) {        $newdata = array();        foreach($data $datakey => $datavalue){              if(!is_array($datavalue)){                  $key = mysql_real_escape_string($datakey);                  $value = mysql_real_escape_string($datavalue);                  $newdata[$key] = $value;              }         }         return $newdata;      }   } 

if use check('saveme'); returns value

if pass array returns corrent value [ check(array('a','b','c',1,2,3)) ]

if pass multidimensional array [check(array(array('a',array('a','b','c',1,2,3),'c',1,2,3),'b',array('a','b','c',1,2,3),1,2,3))]

a kind note want use mysql_real_escape_string array key too.

you can use array_walk_recursive function, go throw leaves of array, , escape values:

array_walk_recursive($array, function(&$leaf) {     if (is_string($leaf))        $leaf = mysql_real_escape_string($leaf); }); 

also, follow data consistency rules, , not use !is_array(), is_string(), because mysql_real_escape_string takes string params, not !string.

unfortunately, array_walk_recursive designed so, can't edit keys. if need edit keys, may want write own recursive function. don't want copy answer, can find here


Comments

Popular posts from this blog

google api - Incomplete response from Gmail API threads.list -

Installing Android SQLite Asset Helper -

Qt Creator - Searching files with Locator including folder -