Helpers – Post – $_POST
Funciones para obtener los datos de la variable superglobal $·_POST en varios formatos. Obtener datos como un array, integer, char o array.
/** * HelperPost.php * @author Code Develium */ /** * Class HelperPost */ abstract class HelpPost { /** * Devuelve una variable del POST como un string * " => " * * @param string $clave * @param bool $convertir_spacial_char * * @return string */ public static function getString( $clave, $convertir_spacial_char = false) { $ret = filter_input(INPUT_POST, $clave); if( $convertir_spacial_char ) { return htmlspecialchars($ret); } else{ return ''.$ret; } } /** * Devuelve el valor de una variable del POST como un integer. * Si no es un integer, devuelve false. * Max int: 2147483647 * * @param string $clave * * @return int|bool */ public static function getInt($clave) { /* Max 2147483647 */ $ret = filter_input(INPUT_POST, $clave); if (strval($ret) !== strval(intval($ret))) { return null; } return intval($ret); } /** * Devuelve un texto swl POST con tags de formato html. * * @param string $clave * * @return string|null */ public static function getHtml($clave) { /* NO contiene htmlspecialchars() */ return ''.filter_input(INPUT_POST, $clave); } /** * Devuelve el valor de una variable del POST como un double. * Si no es un integer o double, devuelve null. * * @param string $clave * * @return double|bool */ public static function getFloat($clave) { $value = str_replace( ',', '.', filter_input(INPUT_POST, $clave)); $ret = filter_var( $value, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); if (false === $ret) { return null; } /* No usar doubleval */ return (float)($value); } /** * Devuelve un string del POST. * No se comprueba el formato de la fecha. * * @param string $clave * * @return string */ public static function getDateTime($clave) { /* Devuelve un string normal. El formato de fecha y hora ha de ser comprobado desde afuera */ /* ya que puede estar vacÃo */ return ''.filter_input(INPUT_POST, $clave); } /** * Devuelve un string de fecha del POST. * No se comprueba el formato de la fecha. * * @param string $clave * * @return string */ public static function getDate($clave) { /* Devuelve un string normal. El formato de fecha ha de ser comprobado desde afuera */ /* ya que puede estar vacÃo */ return ''.filter_input(INPUT_POST, $clave); } /** * Transforma un valor del POST formato SI/NO-YES/NO-Y/S-S/N-1/0 a * bool. * Devuelve -1 si no se puede convertir a true o false * * @param $clave * * @return bool */ public static function getBool($clave) { return HelpConvert::toBool('' . filter_input( INPUT_POST, $clave)); } /** * Devuelve una variable del POST como un array. * * @param string $clave * * @return array * @see validIsEmpty() */ public static function getArray($clave) { $array_tmp = filter_input( INPUT_POST, $clave, FILTER_DEFAULT, FILTER_REQUIRE_ARRAY); if (HelpValidate::isEmpty($array_tmp)) { /* Puede que sólo haya un valor, con lo que no es un array */ $tmp = filter_input(INPUT_POST, $clave); if (HelpValidate::isEmpty($tmp)) { return []; } return [$tmp]; } return $array_tmp; } }