Obtener un Valor enviado ya sea por POST o GET, sino devuelve FALSE o un valor por defecto

Esta es una de mis funciones favoritas, lo que hace es verificar si se envió un valor ya sea por POST o GET, si existe en cualquiera de los dos, devolverá el valor, caso contrario devolverá false o el valor que le agreguemos como segundo parámetro, además que limpia cualquier carácter que pueda ser un problema.

function getValue($key, $default_value = false)
    {
        if (!isset($key) || empty($key) || !is_string($key))
            return false;
        $ret = (isset($_POST[$key]) ? $_POST[$key] : (isset($_GET[$key]) ? $_GET[$key] : $default_value));

        if (is_string($ret) === true)
            $ret = urldecode(preg_replace('/((\%5C0+)|(\%00+))/i', '', urlencode($ret)));
        return !is_string($ret)? $ret : stripslashes($ret);
    }

esta función la uso por ejemplo para validar si se envió o no un input simplemente hago algo como:

 $valor = getValue('nombre_control');
	    if ($valor)
	    {
		    //se envió un dato y puedo proceder a almacenarlo o validarlo
	    }
	    //o usarlo directamente
	    if (getValue('nombre_control'))
	    {
		    //se envió por ejemplo un botón y se que debo realizar una acción
	    }

como función adicional, le pongo esta que permite saber si se envió o no un valor con el método POST o GET, nos devolverá TRUE o FALSE según corresponde.

function isSubmit($submit)
    {
        return (
            isset($_POST[$submit]) || isset($_GET[$submit])
        );
    }

Cabe resaltar que todas las funciones que menciono, las tengo en una clase y como funciones estáticas, por tanto las puedo llamar directamente así: MisFunciones::getValue()

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *