downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
search for in the  

<Object Aggregation Functionsaggregate_methods_by_list>
Last updated: Thu, 26 Jun 2008

aggregate_info

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

aggregate_info — Gets aggregation information for a given object

Description

array aggregate_info ( object $object )

Gets the aggregation information for the given object .

Parameters

object

Return Values

Returns the aggregation information as an associative array of arrays of methods and properties. The key for the main array is the name of the aggregated class.

Examples

Example #1 Using 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++) {
          
// do some slicing
      
}
   }
}

class
Dicer {
   var
$vegetable;
   var
$rotation_angle = 90// degrees

  
function Dicer($vegetable)
   {
      
$this->vegetable = $vegetable;
   }

   function
dice_it($num_cuts)
   {
       echo
"Cutting in one direction\n";
       for (
$i=0; $i < $num_cuts; $i++) {
          
// do some cutting
      
}
      
$this->rotate($this->rotation_angle);
       echo
"Cutting in a second direction\n";
       for (
$i=0; $i < $num_cuts; $i++) {
          
// do some more cutting
      
}
   }

   function
rotate($deg)
   {
       echo
"Now rotating {$this->vegetable} {$deg} degrees\n";
   }

   function
_secret_super_dicing($num_cuts)
   {
      
// so secret we cannot show you ;-)
  
}
}

$obj = new Slicer('onion');
aggregate($obj, 'Dicer');
print_r(aggregate_info($obj));
?>

The above example will output:

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

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

        )

)
As you can see, all properties and methods of the Dicer class have been aggregated into our new object, with the exception of the class constructor and the method _secret_super_dicing



add a noteadd a note User Contributed Notes
Gets aggregation information for a given object
There are no user contributed notes for this page.




<Object Aggregation Functionsaggregate_methods_by_list>
Last updated: Thu, 26 Jun 2008
show source | credits | sitemap | contact | advertising | mirror sites
Copyright © 2001-2005 The PHP Group
All rights reserved.
This unofficial mirror is operated at: http://phpbuilder.com/
Last updated: Tue Nov 1 20:20:59 2005 EST
Columns / Articles | Tips / Quickies | News | News Linking and RSS Feeds | Shared Code Library
Mail Archives | Support / Discussion Forums | Get Started! Links | Contribute! | Docs