Ich habe eine dumme Zweifel.
Ich gründe Benutzername Eigenschaft als privat in Benutzerklasse
Aber Nach den Regeln des Privateigentum nicht
in der Kinderklasse oder geerbt und außerhalb der Klasse zugänglich sein soll, aber es ist in meinem Code geschieht. Ich will nur wissen, wo ich falsch gemacht habe.PHP Privateigentum sollte nicht zugänglich sein in Kind Klasse
<?php
class User{
private $username;
}
class UserRepository extends User{
public function get(){
return $this->username;
//this should give error can't access private property
}
public function set($username){
$this->username=$username;
//this should give error can't access private property
}
}
$UserReposetry =new UserRepository;
$UserReposetry->username='daulat';//this should give error.
echo $UserReposetry->username;//this should give error.
Es sollte nicht funktionieren, aber es funktioniert.
Ja, das ist PHP. Tatsächlich greifen Sie nicht auf den privaten '$ username' der Klasse' User' zu, sondern auf eine neue 'public' (da nicht spezifizierte)' $ username' Eigenschaft, die Sie durch Zuweisung des Wertes 'daulat' erstellt haben. – xzoert