Location: PHPKode > scripts > Complete Array Object > complete-array-object/index.php
<?php

include_once('CompleteArrayObject.php');
$example_numeric_array = range(1, 1000);
$intCOA = new CompleteArrayObject($example_numeric_array, 'int');

// Should throw an exception
try {
    $intCOA[] = 1001; // Valid
    // Uncomment to see exception
    //$intCOA[] = 'some_string'; // Invalid
} catch (InvalidArgumentException $e) {
    echo $e;
}

echo "intCOA sum(): " . $intCOA->sum() . "<br />";
echo "intCOA max(): " . $intCOA->max() . "<br />";
echo "intCOA min(): " . $intCOA->min() . "<br />";
echo "intCOA avg(): " . $intCOA->avg() . "<br />";
$intCOA[] = 777;
$intCOA[] = 777;
$intCOA[] = 779;
$intCOA[] = 779;
$intCOA[] = 779;
// The mode will returns a CompleteArrayObject of CompleteArrayObjects
// if there are multiple mode values. In the case of a only a single mode
// the mode value will be returned.
echo "intCOA mode(): " . $intCOA->mode() . "<br />"; 
echo "intCOA range(): " . $intCOA->range() . "<br />"; 
echo "intCOA product(): " . $intCOA->product() . "<br />"; 


/*** a simple array ***/
$array = array('koala', 'kangaroo', 'wombat', 'wallaby', 'emu', 'kiwi', 'kookaburra', 'platypus');

$animalCOA = new CompleteArrayObject($array); // Creates new untyped COA instance

$animalCOA->arsort();
echo "After arsort():<br />";
echo $animalCOA;

$animalCOA->asort();
echo "After asort():<br />";
echo $animalCOA;

$animalCOA->krsort();
echo "After krsort():<br />";
echo $animalCOA;

$animalCOA->ksort();
echo "After ksort():<br />";
echo $animalCOA;

echo "COA Count:<br />";
echo $animalCOA->count();
echo "<br />";
if ($animalCOA->cleared()) {
    echo "COA has an empty list";
} else {
    echo "COA does not have an empty list";
}
echo "<br />";
// Demonstrating different ways of adding a new value
// without providing a key.
$animalCOA->append('platypus');
$animalCOA->add('platypus');
$animalCOA->push('platypus');
$animalCOA->unshift('platypus');
$animalCOA[] = 'platypus';

// Demonstrating different ways of adding a new value
// when providing a key.
$animalCOA->offsetSet('key1', 'platypus');
$animalCOA->put('key2', 'platypus');
$animalCOA['key3'] = 'platypus';

// Demonstrate finding number of occurrences
// of a particular value in a list.
echo "Platypus occurs " . $animalCOA->occurrences('platypus') . " times in the list.";

// Retrieving values:
$animalCOA->offsetGet('key1');
$animalCOA->get('key1');
$animalCOA['key1'];

// Removing values:
$animalCOA->offsetUnset('key1');
$animalCOA->remove('key2');
$animalCOA->pop();
$animalCOA->shift();

// Resetting the list:
$animalCOA->clear();

?>
Return current item: Complete Array Object