Type Hinting

time-master

Erfahrenes Mitglied
Hallo..
Kann es sein, dass das "Type Hinting" in der php-Version 5.0.4 nicht richtig funktioniert
Bei der Test-Klasse unten (original php.net - Code) gibt es in Zeile 20 einen Fehler.. Man kann ihm nicht sagen, das es ein Array sein muss, welches man ihm übergibt!

PHP:
// Eine Beispielklasse
class MyClass
{
	/**
	 * Eine Testfunktion
	 *
	 * Der erste Parameter muss ein Objekt des Typs OtherClass sein
	 */
	public function test(OtherClass $otherclass) {
		echo $otherclass->var;
	}


	/**
	 * Eine weitere Testfunktion
	 *
	 * Der erste Parameter muss ein Array sein
	 */
	public function test_array(array $input_array) { // Zeile 20
		print_r($input_array);
	}
}

// Eine weitere Beispielklasse
class OtherClass {
	public $var = 'Hallo Welt';
}
 
Type Hinting funktioniert in PHP nur mit Klassen. Basistypen wie integer, float oder eben auch array sind davon ausgeschlossen.

PS: Ab PHP 5.1 (noch nicht erschienen) werden auch Arrays unterstützt :)
 
Zurück