Fonctions d'agrégation d'objets/de composition de fonctions
aggregate_methods_by_list
Fonctions d'agrégation d'objets/de composition de fonctions
PHP Manual

# aggregate_info

(PHP 4 >= 4.3.0)

aggregate_info — Récupère les informations d'agrégation pour un objet donné

### Description

array aggregate_info ( object `$object` )

Récupère les informations d'agrégation pour un objet donné.

### Liste de paramètres

`object`

### Valeurs de retour

Retourne un tableau associatif avec les méthodes et propriétés de chaque classe qui a été agrégée pour former l'objet `object`. La clé du tableau principal est le nom de la classe agrégée.

### Exemples

Exemple #1 Exemple avec aggregate_info()

`<?php
class Slicer {
var $vegetable;
function Slicer($vegetable)
{
$this->vegetable = $vegetable;
}
function slice_it($num_cuts)
{
echo "Doing some simple slicing\n";
for ($i=0; $i < $num_cuts; $i++) {
// coupe en tranches
}
}
}
class Dicer {
var $vegetable;
var $rotation_angle = 90; // degrés
function Dicer($vegetable)
{
$this->vegetable = $vegetable;
}
function dice_it($num_cuts)
{
echo "Couper dans une direction\n";
for ($i=0; $i < $num_cuts; $i++) {
// coupe
}
$this->rotate($this->rotation_angle);
echo "Couper dans une seconde direction\n";
for ($i=0; $i < $num_cuts; $i++) {
// coupe encore
}
}
function rotate($deg)
{
echo "Maintenant tourne {$this->vegetable} {$deg} degrés\n";
}
function _secret_super_dicing($num_cuts)
{
// tellement secret que nous ne pouvons vous montrer ;-)
}
}
$obj = new Slicer('onion');
aggregate($obj, 'Dicer');
print_r(aggregate_info($obj));
?>`

L'exemple ci-dessus va afficher :

    Array
    (
        [dicer] => Array
            (
                [methods] => Array
                    (
                        [0] => dice_it
                        [1] => rotate
                    )

                [properties] => Array
                    (
                        [0] => rotation_angle
                    )

            )

    )

Comme vous pouvez le voir, toutes les méthodes et propriétés de la classe Dicer ont été agrégées dans notre nouvel objet, à l'exception de la classe constructeur et de la méthode privée _secret_super_dicing()

### Voir aussi

- aggregate() - Agrège dynamiquement des classes et objets
- aggregate_methods() - Agrège dynamiquement les méthodes d'une classe à un objet
- aggregate_methods_by_list() - Agrège sélectivement les méthodes d'une classe grâce à une liste
- aggregate_methods_by_regexp() - Agrège sélectivement les méthodes d'une classe grâce à une expression rationnelle
- aggregate_properties() - Agrège dynamiquement les propriétés d'une classe à un objet
- aggregate_properties_by_list() - Agrège sélectivement les propriétés d'une classe grâce à une liste
- aggregate_properties_by_regexp() - Agrège sélectivement les propriétés d'une classe grâce à une expression rationnelle
- deaggregate() - Désagrège un objet

Fonctions d'agrégation d'objets/de composition de fonctions
aggregate_methods_by_list
Fonctions d'agrégation d'objets/de composition de fonctions
PHP Manual