8.5.5 combine
array Set::combine ($data, $path1 = null, $path2 = null, $groupPath = null)
Crée un tableau associatif avec $path1 comme chemin pour construire ses clés et éventuellement $path2 comme chemin pour récupérer les valeurs. Si $path2 n'est pas spécifié, toutes les valeurs seront initialisées à null (utile pour Set::merge). Facultativement, vous pouvez grouper les valeurs par ce qu'on obtient en suivant le chemin spécifié dans $groupPath.
$resultat = Set::combine(array(), '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees');
// $resultat == array();
$resultat = Set::combine('', '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees');
// $resultat == array();
$a = array(
array(
'Utilisateur' => array(
'id' => 2,
'groupe_id' => 1,
'Donnees' => array(
'utilisateur' => 'mariano.iglesias',
'nom' => 'Mariano Iglesias'
)
)
),
array(
'Utilisateur' => array(
'id' => 14,
'groupe_id' => 2,
'Donnees' => array(
'utilisateur' => 'phpnut',
'nom' => 'Larry E. Masters'
)
)
),
array(
'Utilisateur' => array(
'id' => 25,
'groupe_id' => 1,
'Donnees' => array(
'utilisateur' => 'gwoo',
'nom' => 'The Gwoo'
)
)
)
);
$resultat = Set::combine($a, '{n}.Utilisateur.id');
/* $resultat devrait ressembler à cela :
Array
(
[2] =>
[14] =>
[25] =>
)
*/
$resultat = Set::combine($a, '{n}.Utilisateur.id', '{n}.Utilisateur.inexistant');
/* $resultat devrait ressembler à cela :
Array
(
[2] =>
[14] =>
[25] =>
)
*/
$resultat = Set::combine($a, '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees');
/* $resultat devrait ressembler à cela :
Array
(
[2] => Array
(
[utilisateur] => mariano.iglesias
[nom] => Mariano Iglesias
)
[14] => Array
(
[utilisateur] => phpnut
[nom] => Larry E. Masters
)
[25] => Array
(
[utilisateur] => gwoo
[nom] => The Gwoo
)
)
*/
$resultat = Set::combine($a, '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees.nom');
/* $resultat devrait ressembler à cela :
Array
(
[2] => Mariano Iglesias
[14] => Larry E. Masters
[25] => The Gwoo
)
*/
$resultat = Set::combine($a, '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees', '{n}.Utilisateur.groupe_id');
/* $resultat devrait ressembler à cela :
Array
(
[1] => Array
(
[2] => Array
(
[utilisateur] => mariano.iglesias
[nom] => Mariano Iglesias
)
[25] => Array
(
[utilisateur] => gwoo
[nom] => The Gwoo
)
)
[2] => Array
(
[14] => Array
(
[utilisateur] => phpnut
[nom] => Larry E. Masters
)
)
)
*/
$resultat = Set::combine($a, '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees.nom', '{n}.Utilisateur.groupe_id');
/* $resultat devrait ressembler à cela :
Array
(
[1] => Array
(
[2] => Mariano Iglesias
[25] => The Gwoo
)
[2] => Array
(
[14] => Larry E. Masters
)
)
*/
$resultat = Set::combine($a, '{n}.Utilisateur.id', array('{0} : {1}', '{n}.Utilisateur.Donnees.utilisateur', '{n}.Utilisateur.Donnees.nom'), '{n}.Utilisateur.groupe_id');
/* $resultat devrait ressembler à cela :
Array
(
[1] => Array
(
[2] => mariano.iglesias : Mariano Iglesias
[25] => gwoo : The Gwoo
)
[2] => Array
(
[14] => phpnut : Larry E. Masters
)
)
*/
$resultat = Set::combine($a, array('{0} : {1}', '{n}.Utilisateur.Donnees.utilisateur', '{n}.Utilisateur.Donnees.nom'), '{n}.Utilisateur.id');
/* $resultat devrait ressembler à cela :
Array
(
[mariano.iglesias : Mariano Iglesias] => 2
[phpnut : Larry E. Masters] => 14
[gwoo : The Gwoo] => 25
)
*/
$resultat = Set::combine($a, array('{1} : {0}', '{n}.Utilisateur.Donnees.utilisateur', '{n}.Utilisateur.Donnees.nom'), '{n}.Utilisateur.id');
/* $resultat devrait ressembler à cela :
Array
(
[Mariano Iglesias : mariano.iglesias] => 2
[Larry E. Masters : phpnut] => 14
[The Gwoo : gwoo] => 25
)
*/
$resultat = Set::combine($a, array('%1$s : %2$d', '{n}.Utilisateur.Donnees.utilisateur', '{n}.Utilisateur.id'), '{n}.Utilisateur.Donnees.nom');
/* $resultat devrait ressembler à cela :
Array
(
[mariano.iglesias : 2] => Mariano Iglesias
[phpnut : 14] => Larry E. Masters
[gwoo : 25] => The Gwoo
)
*/
$resultat = Set::combine($a, array('%2$d : %1$s', '{n}.Utilisateur.Donnees.utilisateur', '{n}.Utilisateur.id'), '{n}.Utilisateur.Donnees.nom');
/* $resultat devrait ressembler à cela :
Array
(
[2 : mariano.iglesias] => Mariano Iglesias
[14 : phpnut] => Larry E. Masters
[25 : gwoo] => The Gwoo
)
*/
$resultat = Set::combine(array(), '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees');// $resultat == array();$resultat = Set::combine('', '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees');// $resultat == array();$a = array(array('Utilisateur' => array('id' => 2,'groupe_id' => 1,'Donnees' => array('utilisateur' => 'mariano.iglesias','nom' => 'Mariano Iglesias'))),array('Utilisateur' => array('id' => 14,'groupe_id' => 2,'Donnees' => array('utilisateur' => 'phpnut','nom' => 'Larry E. Masters'))),array('Utilisateur' => array('id' => 25,'groupe_id' => 1,'Donnees' => array('utilisateur' => 'gwoo','nom' => 'The Gwoo'))));$resultat = Set::combine($a, '{n}.Utilisateur.id');/* $resultat devrait ressembler à cela :Array([2] =>[14] =>[25] =>)*/$resultat = Set::combine($a, '{n}.Utilisateur.id', '{n}.Utilisateur.inexistant');/* $resultat devrait ressembler à cela :Array([2] =>[14] =>[25] =>)*/$resultat = Set::combine($a, '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees');/* $resultat devrait ressembler à cela :Array([2] => Array([utilisateur] => mariano.iglesias[nom] => Mariano Iglesias)[14] => Array([utilisateur] => phpnut[nom] => Larry E. Masters)[25] => Array([utilisateur] => gwoo[nom] => The Gwoo))*/$resultat = Set::combine($a, '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees.nom');/* $resultat devrait ressembler à cela :Array([2] => Mariano Iglesias[14] => Larry E. Masters[25] => The Gwoo)*/$resultat = Set::combine($a, '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees', '{n}.Utilisateur.groupe_id');/* $resultat devrait ressembler à cela :Array([1] => Array([2] => Array([utilisateur] => mariano.iglesias[nom] => Mariano Iglesias)[25] => Array([utilisateur] => gwoo[nom] => The Gwoo))[2] => Array([14] => Array([utilisateur] => phpnut[nom] => Larry E. Masters)))*/$resultat = Set::combine($a, '{n}.Utilisateur.id', '{n}.Utilisateur.Donnees.nom', '{n}.Utilisateur.groupe_id');/* $resultat devrait ressembler à cela :Array([1] => Array([2] => Mariano Iglesias[25] => The Gwoo)[2] => Array([14] => Larry E. Masters))*/$resultat = Set::combine($a, '{n}.Utilisateur.id', array('{0} : {1}', '{n}.Utilisateur.Donnees.utilisateur', '{n}.Utilisateur.Donnees.nom'), '{n}.Utilisateur.groupe_id');/* $resultat devrait ressembler à cela :Array([1] => Array([2] => mariano.iglesias : Mariano Iglesias[25] => gwoo : The Gwoo)[2] => Array([14] => phpnut : Larry E. Masters))*/$resultat = Set::combine($a, array('{0} : {1}', '{n}.Utilisateur.Donnees.utilisateur', '{n}.Utilisateur.Donnees.nom'), '{n}.Utilisateur.id');/* $resultat devrait ressembler à cela :Array([mariano.iglesias : Mariano Iglesias] => 2[phpnut : Larry E. Masters] => 14[gwoo : The Gwoo] => 25)*/$resultat = Set::combine($a, array('{1} : {0}', '{n}.Utilisateur.Donnees.utilisateur', '{n}.Utilisateur.Donnees.nom'), '{n}.Utilisateur.id');/* $resultat devrait ressembler à cela :Array([Mariano Iglesias : mariano.iglesias] => 2[Larry E. Masters : phpnut] => 14[The Gwoo : gwoo] => 25)*/$resultat = Set::combine($a, array('%1$s : %2$d', '{n}.Utilisateur.Donnees.utilisateur', '{n}.Utilisateur.id'), '{n}.Utilisateur.Donnees.nom');/* $resultat devrait ressembler à cela :Array([mariano.iglesias : 2] => Mariano Iglesias[phpnut : 14] => Larry E. Masters[gwoo : 25] => The Gwoo)*/$resultat = Set::combine($a, array('%2$d : %1$s', '{n}.Utilisateur.Donnees.utilisateur', '{n}.Utilisateur.id'), '{n}.Utilisateur.Donnees.nom');/* $resultat devrait ressembler à cela :Array([2 : mariano.iglesias] => Mariano Iglesias[14 : phpnut] => Larry E. Masters[25 : gwoo] => The Gwoo)*/


























