当前位置: 首页 > 网络学院 > 服务端脚本教程 > PHP > PHP5面向对象 - 基础 - 对象的比较

PHP
PHP 安全邮件
MySQL 介绍
连接 MySQL
创建 MySQL
MySQL 插入记录
MySQL 选择记录
MySQL Where
MySQL Order By
MySQL 记录更新
MySQL 删除记录
PHP ODBC
XML Expat Parser
XML SimpleXML
PHP 数组参考
PHP Calendar
PHP Date
PHP Directory
PHP Filesystem
PHP FTP
PHP HTTP

PHP 中的 PHP5面向对象 - 基础 - 对象的比较


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-03-01   浏览: 895 ::
收藏到网摘: n/a

本节将介绍php中 = 、== 、=== 这些符号的意思和使用方法。

当使用比较操作符(==)时,对象以一种很简单的规则比较:当两个对象有相同的属性和值,属于同一个类且被定义在相同的命名空间中,则两个对象相等。等于符号比较对象时,比较对象是否有相同的属性和值。

比如:

<?php
class Bike()
{
public $color = "red";
}

$myBike_1 = new Bike();
$myBike_2 = new Bike();

if($myBike_1 == $myBike_2)
echo '$myBike_1和$myBike_2的颜色相同';    //都是red,所以显示这条
else
echo '$myBike_1和$myBike_2的颜色不相同';

$myBike_2->color = "blue";  //改变第二个对象的颜色值
if($myBike_1 == $myBike_2)
echo '$myBike_1和$myBike_2的颜色相同';
else
echo '$myBike_1和$myBike_2的颜色不相同';  //其中的一辆变蓝色了所以显示这条
?>

由此可以得出:使用 ==  符号比较两个对象  ,比较的仅仅是两个对象的内容是否一致。

现在我们来看看 (===),简单说这个是更严格意义上的等于,就是不光这个对象内容一样,而且应该是同一个对象(相同的内存地址)。依然是用上面的代码进行说明:

<?php
class Bike()
{
public $color = "red";
}

$myBike_1 = new Bike();
$myBike_2 = new Bike();

if($myBike_1 === $myBike_2)
echo '$myBike_1和$myBike_2为同一对象';  
else
echo '$myBike_1和$myBike_2为不同对象';    //显示这条

$myBike_2->color = "blue";  //改变第二个对象的颜色值
if($myBike_1 === $myBike_2)
echo '$myBike_1和$myBike_2为同一对象';
else
echo '$myBike_1和$myBike_2为不同对象';  //还是显示这条
?>

最后是(=),这个比较简单,表示赋值,如果将对象赋予变量,是指变量将指向这个对象。

评论 (0) All

登陆 | 还没注册?