当前位置:Gxlcms > PHP教程 > php函数、类跟对象以及类的封装、继承、类的静态方法、静态属性

php函数、类跟对象以及类的封装、继承、类的静态方法、静态属性

时间:2021-07-01 10:21:17 帮助过:1人阅读

php函数、类和对象以及类的封装、继承、类的静态方法、静态属性

1、函数

    php内置函数可以直接使用,如果没有安装php扩展即可

    自定义函数

//函数function  函数名     function dump($var = null){    //支出默认参数值        echo
’;         var_dump($var);    }

2、类(class)和对象( new Obj)

php //定义一个人的类,现在还不是对象 class Person{ //私有属性 
    private $eye = '大眼睛';    private $mouth = '小嘴巴';    private $leg = '大长腿';                 //构造方法 new 对象的时候自定调用    public function __construct()    {        echo __CLASS__;    }        public function run()    {        echo  $this->leg;    }     //学习 会用到 腿(走路)、眼睛(看书)、嘴(念书)    public function study()    {        echo $this->leg, $this->eye, $this->mouth;    }                 }//使用类 new以后就变成了对象$person = new Person();          //
输出 Person$person -> run(); //
输出 大长腿$person -> study(); //输出 大长腿 大眼睛 小嘴唇

3、类的封装(public, protected, private)和继承(extends)

//类的继承  class A{    public function help()    {        echo __METHOD__;    }    //声明一个吃的方法 私有的    private function eat()    {        echo  __METHOD__;    }}//子类可以继承父类所有的公共方法和属性、受保护的方法和属性,私有方法除外//如果想使用,重写即可class B extends  A{    public function doSomething()    {        $this -> help();   //继承了父类的方法   前提是声明为public         echo '
'; $this -> eat(); //因为吃是私有的,子类不能使用, 这里在子类中写了一个eat方法. } //子类的吃 public function eat() { echo __METHOD__; }}$b = new B;$b->doSomething();
//
输出结果

A::help


B::eat

4、类的静态方法和静态属性

php//定义一个Url 相关的类class Url{    public static function createUrl($arr = [])    {        echo __METHOD__;    }    public static function redirect($url = '')    {        echo __METHOD__;    }    public static function getCurrentUrl()    {        echo __METHOD__;    }}//把方法声明成静态方法,不需要每次都实例化(new)对象,操作方便,节省内存,效率更高echo  Url::createUrl($var='');echo  Url::redirect($url='');echo  Url::getCurrentUrl();

5、类的静态属性

php//定义一个Url 相关的类class Url{    //声明为类常量    const URL = 'http://www.baidu.com'; //从5.3以后可以直接在类外部使用 const    //声明为静态变量     public static $var = 'it is very good';    public static function createUrl($arr = [])    {        echo self::URL;        echo '
'; echo self::$var; echo '
'; echo __METHOD__; } public static function redirect($url = '') { echo __METHOD__; } public static function getCurrentUrl() { echo __METHOD__; }}//把方法声明成静态方法,不需要每次都实例化(new)对象,操作方便,节省内存,效率更高echo Url::createUrl($var='');

人气教程排行