读文网>知识>方法百科>产品使用方法

php调用父类方法实用三篇

PHP程序员们在实际编写中使用PHP parent来指向父类指针,并调用父类的构造函数,对父类进行初始化。下面由读文网小编整理了几种php 调用父类方法,希望对大家有所帮助。

php 调用父类方法(1)

<?php

class person {

public $name='Tom';

public $gender; //性别

public $money=1000;

public function __construct(){

echo '这里是父类',PHP_EOL;

}

public function say(){

echo $this->name,"is",$this->gender,"";

}

}

class family extends person{

public $name;

public $gender;

public $age;

public $money=100000;

public function __construct(){

parent::__construct(); //调用父类构造方法

echo '这里是子类',PHP_EOL;

}

public function say(){

parent::say(); //调用父类方法

echo $this->name,"is",$this->gender,",and is",$this->age,PHP_EOL;

}

public function cry(){

echo parent::$money,PHP_EOL; //报错,为什么不可以

echo '%>_<%',PHP_EOL;

echo self::$money,PHP_EOL; //调用自身构造方法

echo '(*^_^*)';

}

}

$poor=new family();

$poor->name='李';

$poor->gender='女';

$poor->age=25;

$poor->say();

$poor->cry();

php 调用父类方法(2)

class impro_mysqli extends mysqli{

/*显示上一个插入记录的ID*/

我们就不能使用!

代码:

function id(){

return this->insert_id();

}

因为这样程序会判断在 impro_mysqli 中有个insert_id();的方法,然而实际上,并没有!

而使用

代码:

function id(){

return mysqli_insert_id();

}

虽然正确,但是失去了使用继承的意义,那我们该怎么做呢 ?

很简单,我们只要使用 parent::(parent+2个英文字符的冒号) 字符就好了

所以想要调用父类的函数,就可以写成

代码:

function id(){

return parent::insert_id();

}

php 调用父类方法(3)

1 <?php

2 class EMBA_student // 声明EMBA学生类

3 {

4 //用var来定义类的属性

5 var $no; //序号

6 var $name; // 姓名

7 var $gender; //性别

8 var $age; //年龄

9

10 //方法

11 //方法1 ,设定学生的信息方法

12 function set_data ($arr)

13 {

14 $this->no=$arr["no"];

15 $this->name=$arr["name"];

16 $this->gender=$arr["gender"];

17 $this->age=$arr["age"];

18 }

19 // 方法2, 让学生年龄长大$i岁

20 function set_grow($i)

21 {

22 $this->age+=$i;

23 }

24 //方法3 ,输出学生信息的方法

25 function get_data()

26 {

27 echo "<br />

28 <b>长江商学院EMBA班学生信息</b><br />

29 ";

30

31 echo"学号:$this->no<br />";

32 echo"姓名:$this->name<br />";

33 echo"性别:$this->gender<br />";

34 echo"年龄:$this->age<br />";

35

36 }

37 }

38 // 继承EMBA学生类,来创建一个EMBA方向类

39 class college_student extends EMBA_student{

40 var $department; //定义一个新的属性所在系

41 //重载父类的方法,设定学员的信息

42 function set_data($arr)

43 {

44 parent::set_data($arr);

45 $this->department=$arr["department"];

46 }

47 function change_department($new_department) //定义一个新的方法,更换所在系

48 {

49 $this->department=$new_department; //让学员所在系变成参数系

50 }

51 //输出学生的信息

52 function get_data(){

53 parent::get_data();

54 echo"学习方向:$this->department<br />";

55 }

56

57 }

58 //实例化一个对象

59 $s=new college_student;

60 $arr=array("no"=>"1","name"=>"Qian Zhang","gender"=>"Female","age"=>"33","department"=>"商业营销");

61 $s->set_data($arr);

62 $s->get_data();

63

64

65

66 ?>

相关热搜

相关文章

【产品使用方法】热点

【产品使用方法】最新