Определение переменной класса в php5 oop соответствует управлению доступом, а именно:
public означает глобальный доступ к подклассам внутри и вне класса;
частный означает частный и может использоваться только внутри этого класса;
защищенный означает защищенный; только этот класс или Доступен в подклассах или родительских классах
<?php;
класс БазовыйКласс {
общественный $public = 'общественный';
частный $private = 'частный';
защищенная $protected = 'защищенная'
функция __construct(){;
}
функция print_var(){
напечатайте $this->public;echo '<br />';
напечатайте $this->private echo '<br />';
напечатайте $this->protected echo '<br />';
}
}
Подкласс класса расширяет BaseClass {
// public $public = 'public2';
защищенный $protected ='protected2';
функция __construct(){
echo $this->protected;//Доступ возможен, поскольку класс определен как защищенный, поэтому он может находиться в этом классе или подклассе, а значение может повторяться в подклассах
эхо '<br />';
echo $this->private;//ошибка, поскольку он является частным и может использоваться только в базовом классе, в котором он определен.
}
}
$obj1 = новый BaseClass();
$obj1->print_var();
//echo $obj1->protected;//ошибка Поскольку он защищен, его можно вызывать только внутри этого класса или в подклассах и родительских классах.
//echo $obj1->private;//частная ошибка, как указано выше, может быть вызвана только внутри этого класса
эхо $obj1->public;
эхо "<hr />";
$obj2 = новый подкласс();
эхо '<br />';
echo $obj2->public;echo '<br />';
эхо $obj2->защищено;
//эхо $obj2->private;//ошибка
//эхо $obj2->protected;
?>