Fixe et Récupère les Valeurs des Propriétés
Les exemples suivants présument que $compagnie est la racine d'un arbre d'objets de données créés depuis le schéma et le document montré ci-dessus.
Exemple #1 Accès via les noms de Propriété
- <?php
- $company->name = 'Acme';
- ?>
Exemple #2 Accès via le nom de la propriété en tant que tableau indexé
- <?php
- $company['name'] = 'UltraCorp';
- $eotm = $company['employeeOfTheMonth'];
- ?>
Exemple #3 Itération d'objet de données
- <?php
- $eotm = $company->employeeOfTheMonth;
- foreach ($eotm as $name => $value) {
- echo "$name: $value\n";
- }
- ?>
- <?php
- $departments = $company->departments;
- ?>
Exemple #5 Accès aux éléments à valeurs multiples
- <?php
- $ad_tech_dept = $company->departments[0];
- ?>
Exemple #6 Itération d'une propriété à valeurs multiples
- <?php
- foreach ($company->departments as $department) {
- // ...
- }
- ?>
- <?php
- $company->departments[0]->name = 'Emerging Technologies';
- $dept_name = $company->departments[0]->name;
- ?>
- <?php
- $company['departments'][0]['name'] = 'Emerging Technologies';
- $dept_name = $company['departments'][0]['name'];
- ?>
- <?php
- $jane_doe = $company["departments[1]/employees[2]"];
- ?>
- <?php
- $jane_doe = $company["departments.0/employees.1"];
- ?>
- <?php
- $ad_tech_mgr =
- $company["departments[name='Advanced Technologies']/employees[manager=true]"];
- ?>
Exemple #10 Création d'objets de données fils
- <?php
- $ad_tech_dept = $company["departments[name='Advanced Technologies']"];
- $new_hire = $ad_tech_dept->createDataObject('employees');
- $new_hire->name = 'John Johnson';
- $new_hire->SN = 'E0005';
- $new_hire->manager = false;
- ?>
Exemple #11 Effacement d'une propriété primitive
- <?php
- unset($company->departments[0]->name);
- ?>
Exemple #12 Effacement d'un objet de données
- <?php
- unset($company->departments[0]->employees[0]);
- ?>
Exemple #13 Effacement d'un objet de données référencé
- <?php
- if (isset($company->employeeOfTheMonth)) {
- unset($company->employeeOfTheMonth);
- }
- ?>
Exemple #14 Accès via l'index de la propriété
- <?php
- $company[1] = 'Acme';
- ?>
L'utilisation directe de l'index dans ce cas est fragile. Normalement, la syntaxe reposant sur le nom de la propriété est préférable, mais l'index des propriétés peut être nécessaire dans des cas très spéciaux.