Comunitatea PHP Romania
 

 
aggregate_info

aggregate_info

(no version information, might be only in CVS)

aggregate_info --  Returns an associative array of the methods and properties from each class that has been aggregated to the object.

Description

array aggregate_info ( object object)

Will return the aggregation information for a particular object as an associative array of arrays of methods and properties. The key for the main array is the name of the aggregated class.

For example the code below

Exemplu 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));
?>

Will produce the 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

See also aggregate(), aggregate_methods(), aggregate_methods_by_list(), aggregate_methods_by_regexp(), aggregate_properties(), aggregate_properties_by_list(), aggregate_properties_by_regexp(), deaggregate()

Ultimele discutii in forum RSS Forum

Ultimele articole Ultimele articole

Top membri

Pirahna Pirahna
la birou
carco carco
Bucuresti
Birkoff Birkoff
Bucuresti
Mascka Mascka
Braila
raul_ raul_
whooper whooper
Toronto ON
mihaitha mihaitha
Sibiu
gabysolomon gabysolomon
Bacau
oriceon oriceon
Constanta
garlicinicolae garlicinicolae

Newsletter


Email:
 inscriere
 renuntare
 
 Arhiva newsletter

Parteneriat

Copyright © 2001-2008 PHP Romania Add PHPRomania to Google Add PHPRomania to Del.icio.us Add PHPRomania to Stumbleupon Add PHPRomania to Yahoo! Add PHPRomania to Digg Add PHPRomania to Blink Reggaeton Videos | Vegas Hotel | Problem Mortgage | Cheap Air Jordans | Xbox Mod Chip
Ads: Partener Way2Web Nework: gazduire web | inregistrare domenii | web design | imobiliare | web hosting
Powered by Simplis