• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php (十一) 面向对象 通过类实例化对象_php

php 搞代码 3年前 (2018-06-21) 159次浏览 已收录 0个评论

1. 实例化对象

 
 
 
当定义好类后,我们使用new关键字来生成一个对象。
 $对象名称 = new  类名称();
示例: 
 
  
[php
<span style="color:#333333;"><?php  
class Person  
{  
//下面是人的成员属性  
var $name;     //人的名子  
   
var $sex;      //人的性别  
var $age;      //人的年龄  
//下面是人的成员方法  
function say() //这个人可以说话的方法  
{  
echo "这个人在说话";  
}  
function run() //这个人可以走路的方法  
{  
echo "这个人在走路";  
}  
}  
$p1=new Person();  
$p2=new Person();  
   
  
?></span><span style="color:#ff0000;">  
  
</span>  
 
2. 访问对象中的成员
  $p1=new Person();  怎么去使用对象的成员呢?要想访问对象中的成员就要使用一个特殊的操作符“->”来完成对象成员的访问,类似于 java里面的 " . " 
  示例:
  
[php] 
<?php  
class Person  
{  
//下面是人的成员属性  
var $name;      //人的名子  
var $sex;       //人的性别  
var $age;       //人的年龄  
//下面是人的成员方法  
function say() //这个人可以说话的方法  
{  
echo "这个人在说话";  
}  
function run() //这个人可以走路的方法  
{  
echo "这个人在走路";  
}  
}  
$p1=new Person(); //创建实例对象$p1  
$p2=new Person(); //创建实例对象$p2  
$p3=new Person(); //创建实例对象$p3  
//下面三行是给$p1对象属性赋值  
$p1->name=”张三”;  
$p1->sex=”男”;  
$p1->age=20;  
//下面三行是访问$p1对象的属性  
echo “p1对象的名子是:”.$p1->name.”<br>”;  
echo “p1对象的性别是:”.$p1->sex.”<br>”;  
echo “p1对象的年龄是:”.$p1->age.”<br>”;  
//下面两行访问$p1对象中的方法  
$p1->say();  
   
$p1->run();  
//下面三行是给$p2对象属性赋值  
$p2->name=”李四”;  
$p2->sex=”女”;  
$p2->age=30;  
//下面三行是访问$p2对象的属性  
echo “p2对象的名子是:”.$p2->name.”<br>”;  
echo “p2对象的性别是:”.$p2->sex.”<br>”;  
echo “p2对象的年龄是:”.$p2->age.”<br>”;  
//下面两行访问$p2对象中的方法  
$p2->say();  
$p2->run();  
//下面三行是给$p3对象属性赋值  
$p3->name=”王五”;  
$p3->sex=”男”;  
$p3->age=40;  
   
//下面三行是访问$p3对象的属性  
echo “p3对象的名子是:”.$p3->name.”<br>”;  
echo “p3对象的性别是:”.$p3->sex.”<br>”;  
echo “p3对象的年龄是:”.$p3->age.”<br>”;  
//下面两行访问$p3对象中的方法  
$p3->say();  
$p3->run();  
?>  
 
3. 特殊的引用“$this”的使用
 
PHP里面给我提供了一个本对象的引用$this,每个对象里面都有一个对象的引用$this来代表这个对象,完成对象内部成员的调用, this的本意就是“这个”的意思,上面的实例里面,我们实例化三个实例对象$P1、 $P2、 $P3,这三个对象里面各自存在一个$this分别代表对象$p1、$p2、$p3 。
  
$this就是对象内部代表这个对象的引用,在对象内部和调用本对象的成员和对象外部调用对象的成员所使用的方式是一样的。
$this->属性    $this->name;          $this->age;  $this->sex;
              $this->方法  $this->say();            $this->run();
 
 示例:
[php]  
<?php  
class Person  
{  
//下面是人的成员属性  
var $name;      //人的名子  
var $sex;       //人的性别  
var $age;       //人的年龄  
//下面是人的成员方法  
function say() //这个人可以说话的方法  
{  
   
echo "我的名子叫:".$this->name." 性别:".$this->sex." 我的年龄是:".$this->age."<br>";  
}  
function run() //这个人可以走路的方法  
{  
echo "这个人在走路";  
}  
}  
$p1=new Person(); //创建实例对象$p1  
$p2=new Person(); //创建实例对象$p2  
$p3=new Person(); //创建实例对象$p3  
//下面三行是给$p1对象属性赋值  
$p1->name="张三";  
$p1->sex="男";  
$p1->age=20;  
//下面访问$p1对象中的说话方法  
$p1->say();  
//下面三行是给$p2对象属性赋值  
$p2->name="李四";  
$p2->sex="女";  
$p2->age=30;  
//下面访问$p2对象中的说话方法  
$p2->say();  
//下面三行是给$p3对象属性赋值  
$p3->name="王五";  
$p3->sex="男";  
$p3->age=40;  
//下面访问$p3对象中的说话方法  
$p3->say();  
?>  
 
输出结果为:
我的名子叫:张三性别:男我的年龄是:20
我的名子叫:李四性别:女我的年龄是:30
我的名子叫:王五性别:男我的年龄是:40
 

欢迎大家阅读《php (十一) 面向对象 通过类实例化对象_php》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址