19-01-2011, 01:57 PM
extract permet d'extraire les données d'un tableau en créant une variable par clé :
Après c'est un exemple, de toute façon a part dans de rares exception, extract est de toute façon une fonction dangereuse à utiliser.
Mais sur le principe, le PHP est très (voir trop) permissif et permet parfois de faire des choses qui serait des hérésies dans d'autre langage...
Par exemple les variables de variables :
$table = ['tutu' => 1, 'toto' => 2];
extract($table);
echo $tutu; // Affiche 1
echo $toto; // Affiche 2
echo $GLOBALS['tutu']; // Affiche $tutu soit 1
Après c'est un exemple, de toute façon a part dans de rares exception, extract est de toute façon une fonction dangereuse à utiliser.
Mais sur le principe, le PHP est très (voir trop) permissif et permet parfois de faire des choses qui serait des hérésies dans d'autre langage...
Par exemple les variables de variables :
$__mon_chemin_racine = dirname(__FILE__) . DIRECTORY_SEPARATOR;
$var = '__mon_chemin_racine';
$$var = 'chemin bidon';
echo $__mon_chemin_racine; // Affiche "chemin bidon" et non le chemin d'origine
// Ou encore :
$var = 'racine';
${'__mon_chemin_'.$var} = 'chemin encore bidon';