30 de abril de 2009

PHP: Cómo organizar todas los datos $_POST, $_GET y Cookies de un plumazo

Cuando desarrollas webs con PHP muchas veces te encuentras con que en una página necesitas utilizar a la vez valores recibidos vía formulario ($_POST o $_GET) o vía url ($_GET) o incluso vía cookies.

Si tienes tiempo y quieres hacer las cosas bien organizadas lo suyo es que leas valor a valor y una vez validados los cargues en sus correspondientes variables.

Pero si tienes mucha prisa hay una instrucción de PHP (a partir de la versión 4.10) que te permite leer todos estos valores de una tacada y dejarlos más o menos organizados.

¿Cual es esa instrucción? Pues es import_request_variables. Os pongo a continuación un ejemplo que importa todas las variables $_GET, $_POST y de cookies:

<?php

$_POST["var0"]="Hola mundo";

import_request_variables("gp", "variable_");

echo $variable_var0;

?>


En este caso imprimirá en pantalla "Hola Mundo".

El formato de esta instrucción es el siguiente:

import_request_variables($tipos,$prefijo);

Los $tipos pueden ser:
  • p: $_POST
  • g: $_GET
  • c: Cookies
Son combinables como hemos visto en el ejemplo, pero podemos usar sólo uno de ellos si queremos.

El parámetro $prefijo es opcional, si no lo usamos las variables se crearán sin prefijo.

En mi opinión es una instrucción que si tienes mucha prisa puede ser útil, pero yo soy de los que prefiere gestionar variable a variable :)