79 lines
1.1 KiB
PHP
79 lines
1.1 KiB
PHP
<?php
|
|
/**
|
|
* Testclass
|
|
* @author jpt
|
|
*/
|
|
class Foo {
|
|
/**
|
|
* @var array Instances of Bar.
|
|
*/
|
|
protected $pool;
|
|
|
|
function __construct() {
|
|
$this->pool = array();
|
|
}
|
|
|
|
/**
|
|
* Adds an Instance of Bar to the Pool.
|
|
* @param Bar $bar
|
|
* @return void
|
|
*/
|
|
public function addBar($bar) {
|
|
array_push($this->pool, $bar);
|
|
}
|
|
|
|
/**
|
|
* Returns the internal instance of Bar for the specific ID.
|
|
* @param int $id
|
|
* @return Bar
|
|
*/
|
|
public function getBar($id) {
|
|
return $this->pool[$id];
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
* Outputs the current state of the bars in the pool.
|
|
* @return void
|
|
*/
|
|
public function getTestResult() {
|
|
foreach($this->pool AS $id=>$bar) {
|
|
echo "ID: " . $id . ", Test: " . $bar->test . "\n";
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Testclass #2
|
|
* @author jpt
|
|
*/
|
|
class Bar {
|
|
/**
|
|
* @var string Teststring.
|
|
*/
|
|
public $test;
|
|
|
|
/**
|
|
* Default constructor. Initializes test variable.
|
|
* @return void
|
|
*/
|
|
function __construct() {
|
|
$this->test = "failed";
|
|
}
|
|
}
|
|
|
|
|
|
$f = new Foo();
|
|
|
|
$f->addBar(new Bar());
|
|
$f->addBar(new Bar());
|
|
$f->addBar(new Bar());
|
|
$f->addBar(new Bar());
|
|
|
|
$f->getBar(1)->test = "success";
|
|
|
|
$f->getTestResult();
|
|
|
|
|
|
?>
|