Home  >  Article  >  Backend Development  >  The difference between public, private and protected in PHP

The difference between public, private and protected in PHP

藏色散人
藏色散人Original
2019-02-21 10:26:266112browse

public, private and protected are called access modifiers. Just like C, PHP also has three access modifiers such as public, private and protected. The visibility of a property, method or constant can be defined by preceding the declaration with these keywords.

The difference between public, private and protected in PHP

#1. If a class member is declared public, then it can be accessed from anywhere.

2. If a class member is declared protected, it can only be accessed within the class itself and in inheritance and parent classes.

3. If a class member is declared private, it can only be accessed by the class that defines the member.

public: This modifier can be used both internally and externally.

Example:

<?php

class pub {
    public $tag_line = "PHP中文网!";
    function display() {
        echo $this->tag_line."<br/>";
    }
}

class child extends pub {
    function show(){
        echo $this->tag_line;
    }
}

$obj= new child;

echo $obj->tag_line."<br/>";

$obj->display();

$obj->show();

Output:

PHP中文网!
PHP中文网!
PHP中文网!

protected: This modifier can be used in the class in which it is defined and its parent or inherited class .

Example:

<?php 
  
class pro { 
    protected $x = 500; 
    protected $y = 500; 
              
    function sub()  
    { 
        echo $sum=$this->x-$this->y . "<br/>"; 
    }      
}  
  
class child extends pro { 
    function mul() 
    { 
        echo $sub=$this->x*$this->y; 
    } 
}  
  
$obj= new child; 
$obj->sub(); 
$obj->mul(); 
?>

Output:

0 
250000

private: This modifier can be used in the class in which it is defined. (It cannot be accessed outside the class means inherited class).

Example:

<?php

class demo {
    private $name="PHP中文网";

    private function show()
    {
        echo "这是基(父)类的私有方法";
    }
}

class child extends demo {
    function display()
    {
        echo $this->name;
    }
}

$obj= new child;
$obj->show();
$obj->display();

Output: The difference between public, private and protected in PHPThe error shown in the figure is because private class data cannot be accessed outside the class.

Related recommendations: "PHP Tutorial"http://www.php.cn/course/list/29.html

This article This article is an introduction to the differences between public, private and protected in PHP. I hope it will be helpful to friends in need!

The above is the detailed content of The difference between public, private and protected in PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn