- is_numeric: documentation ( source)
- get_defined_vars: documentation ( source)
<?php
abstract class Basis {
public function __construct($args = null) {
if (is_numeric($args) && $args > 0) echo PHP_EOL . 'Geen argumenten gebruiken halve gare!' . PHP_EOL;
}
public function testArgs($given, $defined) {
if ($given > count($defined)) echo PHP_EOL . 'Te veel argumenten gebruikt soepkip!' . PHP_EOL;
}
}
class Testing extends Basis {
public function __construct() {
parent::__construct(func_num_args());
}
public function someFunction($a, $b) {
$this->testArgs(func_num_args(), get_defined_vars());
}
}
$test = new Testing('stiekem een argument toegevoegd!');
$test->someFunction('a', 'b');
$test->someFunction('a', 'b', 'eentje teveel');