8.87 agrégation d'objets/Composition de fonctions
8 Référence des fonctions
Manuel PHP
. Introduction . Exemples ->aggregate_info . aggregate_methods_by_list . aggregate_methods_by_regexp . aggregate_methods . aggregate_properties_by_list . aggregate_properties_by_regexp . aggregate_properties . aggregate . aggregation_info . deaggregate
|
8.87.3 aggregate_info()
Retourne un tableau associatif avec les méthodes et propriétés de chaque classe
qui a été agrégée
[ Exemples avec aggregate_info ] CVS uniquement
array
aggregate_info (
object
object
)
aggregate_info
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.
Pour un exemple, voir le code ci-dessous.
| Exemple avec aggregate_info |
<?php
class Slicer { var $legume;
function Slicer($legume) { $this->legume = $legume; }
function slice_it($num_cuts) { echo "Coupe en tranches\n"; for ($i=0; $i < $num_cuts; $i++) { // coupe en tranches } } }
class Dicer { var $legume; var $rotation_angle = 90; // degrés
function Dicer($legume) { $this->legume = $legume; }
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->legume} {$deg} degrees\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)); ?>
|
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
,
aggregate_methods
,
aggregate_methods_by_list
,
aggregate_methods_by_regexp
,
aggregate_properties
,
aggregate_properties_by_list
,
aggregate_properties_by_regexp
et
deaggregate
.
|