PHP重载方法_PHP教程
推荐:PHP daddslashes 方法@set_magic_quotes_runtime(0); $MQG = get_magic_quotes_gpc(); if(!$MQG $_POST) $_POST = daddslashes($_POST); if(!$MQG $_GET) $_GET = daddslashes($_GET); //转译字符函数 function daddslashes($string) { if(!is_array($string)) return addslashes($string);
1.重载 Overload
子类改变父类的方法,为重载。
重载是一种覆盖性行为,会将以前的方法覆盖掉。
2.重载案例:
- <?php
- class EMBA_student // 声明EMBA学生类
- {
- //用var来定义类的属性
- var $no; //序号
- var $name; // 姓名
- var $gender; //性别
- var $age; //年龄
- //方法
- //方法1 ,设定学生的信息方法
- function set_data ($arr)
- {
- $this->no=$arr["no"];
- $this->name=$arr["name"];
- $this->gender=$arr["gender"];
- $this->age=$arr["age"];
- }
- // 方法2, 让学生年龄长大$i岁
- function set_grow($i)
- {
- $this->age+=$i;
- }
- //方法3 ,输出学生信息的方法
- function get_data()
- {
- echo "<br />
- <b>长江商学院EMBA班学生信息</b><br />
- ";
- echo"学号:$this->no<br />";
- echo"姓名:$this->name<br />";
- echo"性别:$this->gender<br />";
- echo"年龄:$this->age<br />";
- }
- }
- // 继承EMBA学生类,来创建一个EMBA方向类
- class college_student extends EMBA_student{
- var $department; //定义一个新的属性所在系
- function change_department($new_department) //定义一个新的方法,更换所在系
- {
- $this->department=$new_department; //让学员所在系变成参数系
- }
- //重载父类的方法,设定学员的信息
- function set_data($arr){
- $this->no=$arr["no"];
- $this->name=$arr["name"];
- $this->gender=$arr["gender"];
- $this->age=$arr["age"];
- $this->department=$arr["department"];
- }
- }
- //实例化一个对象
- $s=new college_student;
- $arr=array("no"=>"1","name"=>"Qian Zhang","gender"=>"Female","age"=>"33","department"=>"商业营销");
- $s->set_data($arr);
- // $s->department="商业营销"; 因为采用了函数的重载,所以不需要在这个地方为对象赋值了
- echo"该学员所在专业为:$s->department<br />";
- $s->change_department("哲学工商管理");
- echo"该学员所在专业为:$s->department<br />";
- $s->get_data();
- ?>
结果:
该学员所在专业为:商业营销
该学员所在专业为:哲学工商管理
长江商学院EMBA班学生信息
学号:1
姓名:Qian Zhang
性别:Female
年龄:33
3.函数中,对数组键值的定义方式值得学习:
先定义属性,然后直接以[]来定义键名。
- class EMBA_student // 声明EMBA学生类
- {
- //用var来定义类的属性
- var $no; //序号
- var $name; // 姓名
- var $gender; //性别
- var $age; //年龄
- //方法
- //方法1 ,设定学生的信息方法
- function set_data ($arr)
- {
- $this->no=$arr["no"];
- $this->name=$arr["name"];
- $this->gender=$arr["gender"];
- $this->age=$arr["age"];
- }
- }
分享:PHP获取汉字的拼音(全部与首字母)?phpclass GetPingYing { private $pylist = array('a'=-20319,'ai'=-20317,'an'=-20304,'ang'=-20295,'ao'=-20292,'ba'=-20283,'bai'=-20265,'ban'=-20257,'bang'=-20242,'bao'=-20230,'bei'=-20051,'ben'=-20036,'beng'=-20032,'bi'=-20026,'bian'=-20002,'biao'=-19
相关PHP教程: