本教程操作环境:windows7系统、PHP8版、DELL G3电脑

php方法体是什么

一个类的类是有两个部分组成:变量的声明和方法的定义。方法的定义包括两个部分:方法的声明和方法体


(资料图片)

方法声明部分{方法体的部分}

在方法声明后的一对大括号以及中间的内容就称之为方法的方法体,方法体的内容包括局部变量的声明和php语句。

简单来说:方法体是一个方法的代码块即花括号包裹部分。

PHP 类、对象和方法

一、类和对象的关系

类的实体化结果是对象,而对象的抽象就是类。在开发过程中,我们通常都是先抽象(幻想)出一个类,再用该类去创建对象(实现幻想的内容)。在程序中,直接使用的是我们(实现幻想)的对象,而不是抽象(幻想)的类。

二、如何抽象一个类

class 类名{     成员属性:        姓名、性别、年龄、身高、体重     成员方法:        说话、走路、学习、吃饭、开车   }

所有的类都是从成员属性和成员方法这两方面去声明,属性和方法都是类中的成员,所以属性又叫做成员属性,方法又叫做成员方法

1、成员属性 -->特征

在对象中直接声明变量就称为成员属性,可以在类中声明多个成员变量,即对象中可以有多个成员属性

class Person{    var $name;    //声明第一个成员属性,用于储存人的名字    var age;      //声明第一个成员属性,用于储存人的年龄    var $sex;     //声明第一个成员属性,用于储存人的性别  }

2、成员方法 -->功能

class Person{    var $name;    //声明第一个成员属性,用于储存人的名字    var $age;      //声明第一个成员属性,用于储存人的年龄    var $sex;     //声明第一个成员属性,用于储存人的性别    function say(){   //声明第一个方法        echo "人在说话";   //定义人说话的功能    }    function run(){   //声明第二个方法        echo "人在跑步";   //定义人跑步的功能    }    function eat(){   //声明第三个方法        echo "人在吃饭";   //定义人吃饭的功能    }}

对象就是把相关的属性和方法组织在一起。其中成员属性和成员方法都是可以选的,可以只有成员属性,也可以只有成员方法,也可以没有成员。

三、实例化对象

一个类可以声明多个对象,让对象去访问成员属性和成员方法

class Person{    var $name;    //声明第一个成员属性,用于储存人的名字    var $age;      //声明第一个成员属性,用于储存人的年龄    var $sex;     //声明第一个成员属性,用于储存人的性别    function say(){   //声明第一个方法        echo "人在说话";   //定义人说话的功能    }    function run(){   //声明第二个方法        echo "人在跑步";   //定义人跑步的功能    }    function eat(){   //声明第三个方法        echo "人在吃饭";   //定义人吃饭的功能    }}// 实例化对象$sqyy = new Person();//成员属性赋值$sqyy -> name = "伊川";$sqyy -> sex = "男";$sqyy -> age = 26;//访问对象中的成员方法$sqyy->eat();

四、特殊的对象引用 "$this"

上面的示例中,我们是实例化一个对象之后再给成员属性赋值和访问成员方法的。那么 $this也可以在成员方法中使用,代表的是当前的这个对象

成员方法调用前的对象是谁,$this就代表谁

class Person{    var $name;        function info(){             $this ->name = "SQYY";    }  }

五、构造方法与析构方法

1、构造方法

构造方法是对象创建完成后第一个被对象自动调用的方法,会初始化这个对象,当使用new关键字实例化对象时会自动触发。

<?php    class Person{        //下面是声明人的成员属性,都是没有初始值的,在创建对象时,使用构造方法赋给初始值        var $name;   //定义人的名字        var $sex;    //定义人的性别        var $age;    //定义人的年龄                function __construct($name="SQYY",$sex="男",$age=1){            $this -> name = $name;  //在创建对象时,使用传入的参数$name为成员属性 $this->name赋初值            $this -> sex = $sex;    //在创建对象时,使用传入的参数$sex为成员属性 $this->sex赋初值            $this -> age = $age;    //在创建对象时,使用传入的参数$sex为成员属性 $this->age赋初值        }            //下面声明人的成员方法        function say(){            echo "我的名字:" .$this ->name. " ,性别:" .$this -> sex ."  年龄" .$this ->age. "。<br>";        }    }        $person1 = new Person();                   //创建对象$person1时会自动执行构造方法,默认传参    $person2 = new Person("张三");             //创建对象$person2时会自动执行构造方法,传入第一个参数,其他默认传参    $person3 = new Person("李四","男");        //创建对象$person3时会自动执行构造方法,传入前两个参数,其他默认传参    $person4 = new Person("王五","女","20");   //创建对象$person4时会自动执行构造方法,传入所有参数        $person1 ->say();    $person2 ->say();    $person3 ->say();    $person4 ->say();?>

运行结果

2、析构方法

对象在销毁之前最后一个被对象自动调用的方法,先创建 传入变量后销毁

<?php     header("Content-type:text/html;charset=utf-8");    // 定义一个汽车的类    class car{        // 成员属性        public $name;        public $color;        //构造方法        public function __construct($name,$color){            $this->name = $name;            $this->color = $color;            echo "你创建了".$this->name."<br>";        }        // 析构方法        public function __destruct(){            echo "你销毁了".$this->name."<br>";        }    }    // 实例化对象    $hanma = new car("悍马","粉色","H2");    $bmw = new car("宝马","红色","X7");    $benchi = new car("奔驰","黑色","s600");    // unset($bmw);    $bmw = "1111"; ?>

运行结果

如果我们不引用变量,创建完对象之后就会销毁。

<?php     header("Content-type:text/html;charset=utf-8");    // 定义一个汽车的类    class car{        // 成员属性        public $name;        public $color;        //构造方法        public function __construct($name,$color){            $this->name = $name;            $this->color = $color;            echo "你创建了".$this->name."<br>";        }        // 析构方法        public function __destruct(){            echo "你销毁了".$this->name."<br>";        }    }    // 实例化对象    new car("悍马","粉色","H2");    new car("宝马","红色","X7");    new car("奔驰","黑色","s600"); ?>

运行结果

推荐学习:《PHP视频教程》

以上就是php方法体是什么的详细内容,更多请关注php中文网其它相关文章!

推荐内容