zl程序教程

您现在的位置是:首页 >  后端

当前栏目

PHP笔记之:基于面向对象设计的详解

PHP笔记 详解 基于 设计 面向对象
2023-06-13 09:14:53 时间

public表示全局,类内部外部子类都可以访问;

复制代码代码如下:

<?php

    classTest{
        public $name="Janking",
                $sex="male",
                $age=23;

        function__construct(){
            echo$this->age."<br/>".$this->name."<br/>".$this->sex."<br/>";
        }

         functionfunc(){
            echo$this->age."<br/>".$this->name."<br/>".$this->sex."<br/>";
        }
    }

 
 $P=newTest();
 echo"<br/><br/>";
 $P->age=100;
 $P->name="Rainy";
 $P->sex="female";
 $P->func();
 ?>
Public

private表示私有的,只有本类内部可以使用;
复制代码代码如下:

<?php

    classTest{
        private $name="Janking",
                $sex="male",
                $age=23;

        function__construct(){
            $this->funcOne();
        }

         functionfunc(){
            echo$this->age."<br/>".$this->name."<br/>".$this->sex."<br/>";
        }

        privatefunctionfuncOne(){
            echo$this->age."<br/>".$this->name."<br/>".$this->sex."<br/>";
        }
    }

 
 $P=newTest();
 echo"<br/><br/>";
 $P->func();
 $P->age=100;       //CannotaccessprivatepropertyTest::$age
 $P->name="Rainy";  //CannotaccessprivatepropertyTest::$name
 $P->sex="female";  //CannotaccessprivatepropertyTest::$female
 $P->funcOne();     //CalltoprivatemethodTest::funcOne()fromcontext""
 ?>
Private

protected表示受保护的,只有本类或子类或父类中可以访问;和封装有关的魔术方法:

 __set():是直接设置私有成员属性值时,自动调用的方法

 __get():是直接获取私有成员属性值时,自动调用的方法

 __isset();是直接isset查看对象中私有属性是否存时自动调用这个方法

 __unset();是直接unset删除对象中私有属性时,自动调用的方法