Hostign Towebs
 
    BUSCARDOR 
 
http_build_query

http_build_query

(PHP 5)

http_build_query -- Generar una cadena de consulta codificada estilo URL

Descripción

string http_build_query ( array datos_formulario [, string prefijo_numerico] )

Genera una cadena de consulta codificada estilo URL a partir de la matriz asociativa (o indexada) dada. datos_formulario puede ser una matriz u objeto que contenga propiedades. Una matriz datos_formulario puede ser una estructura uni-dimensional sencilla, o una matriz de matrices (que a su vez puede contener otras matrices). Si se usan índices numéricos en la matriz base, y se provee un prefijo_numerico, éste será añadido al comienzo de los índices numéricos para aquellos elementos encontrados sólo en la matriz base. Esto es para permitir que se opere con nombres de variables legales cuando los datos sean decodificados por PHP u otra aplicación CGI más adelante.

Nota: arg_separator.output es usado para separar argumentos.

Ejemplo 1. Uso simple de http_build_query()

<?php
$datos
= array('foo'=>'bar',
               
'baz'=>'boom',
               
'vaca'=>'leche',
               
'php'=>'procesador de hipertexto');
              
echo
http_build_query($datos); // foo=bar&baz=boom&vaca=leche&php=procesador+de+hipertexto

?>

Ejemplo 2. http_build_query() con elementos indexados numéricamente.

<?php
$datos
= array('foo', 'bar', 'baz', 'boom', 'vaca' => 'leche',
               
'php' => 'procesador de hipertexto');
              
echo
http_build_query($datos);
/* Genera la salida:
      0=foo&1=bar&2=baz&3=boom&vaca=leche&php=procesador+de+hipertexto
*/

echo http_build_query($datos, 'mivar_');
/* Genera la salida:
      mivar_0=foo&mivar_1=bar&mivar_2=baz&mivar_3=boom&vaca=leche&php=procesador+de+hipertexto
*/
?>

Ejemplo 3. http_build_query() con matrices complejas

<?php
$datos
= array('usuario'=>array('nombre'=>'Bob Smith',
                                
'edad'=>47,
                                
'sexo'=>'M',
                                
'fdm'=>'5/12/1956'),
               
'pasatiempos'=>array('golf', 'opera', 'poker', 'rap'),
               
'hijos'=>array('bobby'=>array('edad'=>12,
                                             
'sexo'=>'M'),
                              
'sally'=>array('edad'=>8,
                                             
'sexo'=>'F')),
               
'CEO');
                                               
echo
http_build_query($datos, 'banderas_');
?>

esto generará la salida: (acotada por razones de legibilidad)

usuario[nombre]=Bob+Smith&usuario[edad]=47&usuario[sexo]=M&
usuario[fdm]=5%1F12%1F1956&pasatiempos[0]=golf&pasatiempos[1]=opera&
pasatiempos[2]=poker&pasatiempos[3]=rap&hijos[bobby][edad]=12&
hijos[bobby][sexo]=M&hijos[sally][edad]=8&hijos[sally][sexo]=F&banderas_0=CEO

Nota: Sólo el elemento "CEO" indexado numéricamente en la matriz base recibió un prefijo. Los otros índices numéricos, encontrados bajo los pasatiempos, no requieren un prefijo tipo cadena para ser nombres legales de variables.

Ejemplo 4. Uso de http_build_query() con un objeto

<?php
class miClase {
  var
$foo;
  var
$baz;
  
  function
miClase()
  {
    
$this->foo = 'bar';
    
$this->baz = 'boom';
  }
}

$datos = new miClase();

echo
http_build_query($datos); // foo=bar&baz=boom

?>

Vea también: parse_str(), parse_url(), urlencode(), y array_walk()



 
 
Rute path: HOME / MANUALES Y TUTORIALES / MANUAL DE PHP
Home | Hosting | Housing | Revendedores | Soporte | Empresa | Mapa del Sitio | Contacto | FAQ | Blog Corporativo
Atención técnica y comercial: (54)-11-5031-1111 las 24 hs. los 365 días del año. ToWebs, (c) 2008
Virtucom Networks S.A Av. Belgrano 1586, piso 10 (C1093AAQ) Cap. Fed. Bs. As, Argentina.