Manuel PHP

Précédent

 

Suivant

extract

extract -- Exporte un tableau dans la table des symboles

Description

void extract(array var_array, int [extract_type], string [prefix]);

Cette fonction sert à exporter un tableau vers la table des symboles. Elle prend un tableau associatif var_array et crée les variables dont les noms sont les index de ce tableau, et leur affecte la valeur associée. Pour chaque paire clé/valeur, cette fonction crée une variable, avec les paramètres extract_type et prefix.

extract() vérifie líexistence de la variable avant de la créer. La manière de traiter les collisions est déterminée par extract_type. Ce paramètre peut prendre une des valeurs suivantes :

EXTR_OVERWRITE
Lors díune collision, réécrire la variable existante.
EXTR_SKIP
Lors díune collision, ne pas réécrire la variable existante
EXTR_PREFIX_SAME
Lors díune collision, ajouter le préfixe prefix, et créer une nouvelle variable.
EXTR_PREFIX_ALL
ajouter le préfixe prefix, et créer une nouvelle variable.

Si extract_type est omis, extract() utilise EXTR_OVERWRITE par défault.

Notez que prefix níest nécessaire que pour les valeurs de extract_type suivantes : EXTR_PREFIX_SAME et EXTR_PREFIX_ALL.

extract() vérifie que les clés constitue un nom de variable valide, et si cíest le cas, procède à son exportation.

Une utilisation possible de cette fonction est líexportation vers la table des symboles de tableau de variables retourné par la fonction wddx_deserialize().

Exemple 1. extract exemple

<?

/* Supposons que $var_array est un tableau retourné par 
   wddx_deserialize */
$taille = "grand";
$var_array = array("couleur" => "bleu",
                   "taille"  => "moyen",
                   "forme" => "sphere");
extract($var_array, EXTR_PREFIX_SAME, "wddx");

print "$couleur, $taille, $forme, $wddx_taille\n";

?>
      

Líexemple ci dessus va afficher

blue, large, sphere, medium
	 

La variable $taille nía pas été réécrite, car on avait spécifié le paramètre EXTR_PREFIX_SAME, qui a permis la création $wddx_size. Si EXTR_SKIP avait été utilisé, alors $wddx_size níaurait pas été créé. Avec EXTR_OVERWRITE, $taille aurait pris la valeur "moyen", et avec EXTR_PREFIX_ALL, les variables créées seraient $wddx_couleur, $wddx_taille, et $wddx_forme.

Précédent

Sommaire

Suivant

end

Chapitre

in_array