function gce_settings_sanitize($input) { return gce_sanitize_input($input, 'sanitize_text_field'); }
/** * Sanitize a variable of unknown type. * * Helper function to sanitize a variable from input, * which could also be a multidimensional array of variable depth. * * @param mixed $var Variable to sanitize. * @param string $func Function to use for sanitizing text strings (default 'sanitize_text_field') * * @return array|string Sanitized variable */ function gce_sanitize_input($var, $func = 'sanitize_text_field') { if (empty($var) || is_null($var)) { return ''; } if (is_bool($var)) { if ($var === true) { return 'yes'; } else { return 'no'; } } if (is_string($var) || is_numeric($var)) { $func = is_string($func) && function_exists($func) ? $func : 'sanitize_text_field'; return call_user_func($func, trim(strval($var))); } if (is_object($var)) { $var = (array) $var; } if (is_array($var)) { $array = array(); foreach ($var as $k => $v) { $array[$k] = gce_sanitize_input($v); } return $array; } return ''; }