Manuel PHP

aggregate_info

(No version information available, might be only in CVS)

aggregate_infoRé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()

  1. <?php
  2.  
  3. class Slicer { 
  4.    var $vegetable; 
  5.  
  6.    function Slicer($vegetable) 
  7.    { 
  8.       $this->vegetable = $vegetable; 
  9.    } 
  10.  
  11.    function slice_it($num_cuts) 
  12.    { 
  13.       echo "Doing some simple slicing\n"; 
  14.       for ($i=0; $i < $num_cuts; $i++) { 
  15.          // coupe en tranches
  16.       } 
  17.    }  
  18. }  
  19.  
  20. class Dicer { 
  21.    var $vegetable; 
  22.    var $rotation_angle = 90; // degrés
  23.  
  24.    function Dicer($vegetable) 
  25.    { 
  26.       $this->vegetable = $vegetable; 
  27.    } 
  28.  
  29.    function dice_it($num_cuts) 
  30.    { 
  31.       echo "Couper dans une direction\n"; 
  32.       for ($i=0; $i < $num_cuts; $i++) { 
  33.          // coupe
  34.       } 
  35.       $this->rotate($this->rotation_angle); 
  36.       echo "Couper dans une seconde direction\n"; 
  37.       for ($i=0; $i < $num_cuts; $i++) { 
  38.          // coupe encore
  39.       } 
  40.    } 
  41.  
  42.    function rotate($deg) 
  43.    { 
  44.       echo "Maintenant tourne{$this->vegetable} {$deg}degrés\n"; 
  45.    } 
  46.  
  47.    function _secret_super_dicing($num_cuts) 
  48.    { 
  49.       // tellement secret que nous ne pouvons vous montrer ;-)
  50.    }  
  51. }  
  52.  
  53. $obj = new Slicer('onion');  
  54. aggregate($obj, 'Dicer');  
  55. print_r(aggregate_info($obj));  
  56. ?> 

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


Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Bretagne - php - Moto - Kit graphique