Ist das ein Bug? Oder ein Feature? Ich finde es jedenfalls seltsam, dass Objekte einer Klasse auf alle Properties eines anderen Objektes der gleichen Klasse (oder einer erbenden Klasse) zugreifen können, auch wenn diese "protected" sind.

Das macht die Sache zwar zum Beispiel beim Implementieren von Hooks leichter, wenn diese das Elternobjekt übergeben bekommen und man Zugriff auf dessen geschützte Eigenschaften haben will, aber soll das wirklich so sein?

`

<?php

class a {

protected $property;

function __construct($property='') {

$this->property = $property;

}

function getPropertyOfAnotherObjectOfTheSameClass() {

$a2 = new a('a2');

return $a2->property;

}

}

$a = new a();

echo $a->getPropertyOfAnotherObjectOfTheSameClass();

// Ausgabe ist: "a2"

// und nicht:

// "Fatal error: Cannot access protected property..."

?>

`

Comments

This website uses disqus for the commenting functionality. In order to protect your privacy comments are disabled by default.

Enable Comments