77 votes

Créer un tableau assoc avec des clés égales et des valeurs d'un tableau régulier

J'ai un tableau qui ressemble à

 $numbers = array('first', 'second', 'third');
 

Je veux avoir une fonction qui prendra ce tableau en entrée et retournera un qui ressemblerait à ceci:

 array(
'first' => 'first',
'second' => 'second',
'third' => 'third'
)
 

Je me demande s'il est possible d'utiliser array_walk_recursive ou quelque chose de similaire ...

159voto

Noah Medling Points 2743

Vous pouvez utiliser la fonction array_combine , comme suit:

 $numbers = array('first', 'second', 'third');
$result = array_combine($numbers, $numbers);
 

4voto

Artem Russakovskii Points 7341

Cette approche simple devrait fonctionner:

 $new_array = array();
foreach($numbers as $n){
  $new_array[$n] = $n;
}
 

Vous pouvez également faire quelque chose comme:

array_combine(array_values($numbers), array_values($numbers))

0voto

Alan Storm Points 82442

Cela devrait le faire.

 function toAssoc($array) {
	$new_array = array();
	foreach($array as $value) {
		$new_array[$value] = $value;
	}		
	return $new_array;
}
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X