Home>Article>Backend Development> PHP learning private properties of external calling classes
This article mainly talks about the private properties of external calling classes, which has certain reference value. Interested friends can learn about it and hope to help you.
First let’s take a look at the__get
and__set
functions in the PHP class
When trying to get an unavailable When the attribute is reached, the class will automatically call the__get
function.
When trying to set an unreachable property, the class will automatically call the__set
function.
First, let’s take a look at the__get
function. Let’s try to get a reachable attribute:
a; ?>
Look at its return:
1
No problem, the__get
function is not called. Now I will access a private unreachable attribute:
b; ?>
and I will find:
you can get b
It means__get is called here
function, let me take a look at the__set
function, which also uses the reachablepublic
attribute first:
a = 1; echo $dy->a; ?>
Look at the output:
1
Used successfully, no problem, then we use private attributes:
b = 1; echo $dy->b; ?>
At this time we see:
you can get b1 PHP Fatal error: Cannot access private property A::$b in /usercode/file.php on line 11
The__set
function is called here and prompts us that we cannot use it Private properties of the class.
Now let’s use the__set
function to implement external use of private attributes:
$name=$val; } function B(){ echo $this->b; } } $dy = new A(); $dy->b = 1; $dy->B(); ?>
Look at the output:
1
It means the use is successful.
Related tutorials:PHP video tutorial
The above is the detailed content of PHP learning private properties of external calling classes. For more information, please follow other related articles on the PHP Chinese website!