Chose Language:
Author: Admin/Publisher |not finished | checked

PHP extract

PHP extract importa variables dentro de la tabla de símbolos actual desde un array asociativo. Esto es un poco difícil de entender, pero podemos verlo como si hiciera lo inverso a compact. Vea el primer ejemplo

si mi array asociativo es como se ve en la tabla:

nombrePepe
apellidoGaleano
edad42

Obtendré las variables $nombre, $apellido y $edad con los valores "Pepe", "Galeano", 42

Description / Descripción
extract(array &$array, int $flags = EXTR_OVERWRITE, string $prefix = ""): int
Warning -No uses la función extract en datos no confiables como datos ingresados por el usuarios Ejemplo $_GET, $FILES, $_POST, otros.

Parametros

$array -un array asociativo

En caso de que no uses un array asociativo sino un array con idice numerico deberas usar las constantes EXTR_PREFIX_ALL o EXTR_PREFIX_INVALID como flags

$flags – este parametro determina la La manera en que las claves no-válidas/numéricas y las colisiones son tratadas. EXTR_OVERWRITE es la flag por defecto

  • EXTR_OVERWRITE – Si hay una colisión, sobrescribe la variable existente en el ambito en el que este con el valor del array asociativo. Por ejemplo si existe $x= 101 y el array asociativo tiene un valor «x» => 207 ahora $x tendra el valor 207
  • EXTR_SKIP – si hay una variable que colisione esta no se sobrescribirá.
  • EXTR_PREFIX_SAME – Si hay una colisión, prefija el nombre de la variable con el prefijo especificado en $prefix
  • EXTR_PREFIX_ALL – Prefija todos los nombres de variables con el valor dado en $prefix
  • EXTR_PREFIX_INVALID – Sólo prefija los nombres de variables no-válidas/numéricas con el valor de $prefix.
  • EXTR_IF_EXISTS – Sobrescribe la variable sólo si ya existe en la tabla de símbolos actual, de otro modo no hace nada. Esto es útil para definir una lista de variables válidas y después extraer solo aquellas variables que se definieron fuera de $_REQUEST, por ejemplo.
  • EXTR_PREFIX_IF_EXISTS – Crea nombres de variables con prefijo solo si la versión no prefijada de la misma variable existe en la tabla de símbolos actual.
  • EXTR_REFS – Extrae las variables como referencias. Esto significa que los valores de las variables importadas están todavía referenciados por los valores del parámetro $array. Se puede usar esta bandera por sí misma o combinarla con cualquier otra bandera usando el operador OR en $flags.

$prefix -valor con el que se prefijara la variable si es necesario. El prefijo es separado del nombre del key por _

estos son los flags con los que necesitaras de $prefix:

  • EXTR_PREFIX_SAME
  • EXTR_PREFIX_ALL
  • EXTR_PREFIX_INVALID
  • EXTR_PREFIX_IF_EXISTS

Retornos

Retorna un entero que es el numero de variables que fueron importadas con exito.

Ejemplos de PHP extract

// Un arreglo asociativo con algunas variables
$data = [
    'marca' => 'citroen',
    'nombre'=>'c4',
    'precio' => '19500',
    'moneda' => 'euros',
];

// Usando extract para importar las variables
extract($data);

// Ahora puedes usar las variables como si se hubieran declarado individualmente
echo "Marca:".$marca."<br/>";
echo "Nombre: $nombre<br/>";
echo "Precio: $precio<br/>";
echo "Moneda: $moneda<br/>";
Marca:citroen
Nombre: c4
Precio: 19500
Moneda: euros
Category: php
Something wrong? If you found an error or mistake in the content you can contact me on Twitter | @luisg2249_luis.
Last 4 post in same category