function filter_params($array) { $array_ = []; foreach ($array as $key => $value) { if (is_array($value)) { $array_[$key] = filter_params($value); } else { $array_[$key] = htmlspecialchars(trim($value)); } } return $array_; }
/** * Returns parameters values from the example, or posted or the default values * * @param string $algorithm * @param string $source_code * @param array $posted_params * @param array $examples * @param string $filename * @return array */ function get_param_values($algorithm, $source_code, $posted_params, $examples, $filename) { $params = get_params($algorithm, $source_code); if (empty($params)) { $values = array(); } else { if (isset($posted_params['example']) and isset($examples[$posted_params['example']])) { $values = combine_params_and_values($params, $examples[$posted_params['example']]['values']); } else { if (!($values = filter_params($params, $posted_params))) { $values = get_defaults($params, $filename); } } } return fill_missing_params($params, $values); }