Config_Container::searchPath

Config_Container::searchPath() – Trouve un noeud avec un format similaire à XPATH

Synopsis

require_once 'Config/Container.php';

mixed Config_Container::searchPath ( mixed $args )

Description

Cette méthode essaye de trouver un article en suivant un chemin donné à partir du conteneur courant.

Cette méthode ne peut être appelée que sur un objet de type 'section' . Notez que la racine est une section. Cette méthode est récursive.

Cette méthode prend autant de paramètres que nécessaire pour définir votre chemin jusqu'à l'article demandé. Le format est array (item1, item2..., itemN). Les éléments peuvent être des chaînes ou des tableaux. Les chaînes utiliseront pour la recherche le nom de l'élément alors que les tableaux le feront avec le 'nom' et/ou les 'attributs' de l'article demandé.

Parameter

mixed $args

Les chaînes ou tableaux de l'item à chercher dans l'ordre où elle devrons être cherchées, séparées par des virgules

Return value

mixed - référence de l'élément trouvé ou FALSE, si aucun élément trouvé.

Note

This function can not be called statically.

Example

Exemple pour l'utilisation de searchPath()

<?php
// Voici à quoi ressemble notre exemple de configuration XML :

// <config>
//   <db>
//     <user>root</user>
//     <password>pass</user>
//     <host>localhost</host>
//   </db>
// </config>

$config = new Config();
$root =& $menuObj->parseConfig('db.xml''xml');

// Doit retourner la directive motDePAsse dans la db
$passObj =& $root->searchPath(tableau('config''db''password'));
?>

Exemple plus complexe de l'utilisation de searchPath() avec des attributs

<?php
// Voici l'apparence de notre fichier de configuration XML :

// <menu>
//   <group id="company">
//     <page id="news"/>
//     <page id="jobs"/>
//   </group>
//   <group id="projects">
//     <page id="project1"/>
//     <page id="project2"/>
//   </group>
// </menu>

$menuObj = new Config();
$root =& $menuObj->parseConfig('menu.xml''xml');

// Will return the container in menu which 'id' is set to 'projects'
$section =& $root->searchPath(tableau('menu'tableau('group'tableau('id' => 'projects'))));

// To get a page we could also use
$page =& $root->searchPath(tableau('menu',
                                  
tableau('group'tableau('id' => 'projects')), 
                                  
tableau('page',  tableau('id' => 'project2'))));
?>
Supprime un élément de l'objet (Previous) Fixe les attributs d'un élément (Next)
Last updated: Sun, 29 Aug 2010 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

There are no user contributed notes for this page.