PHP 对象。


定义和用法

PHP 中,**对象**是一种复合数据类型(与数组一起)。可以将多种类型的值存储在单个变量中。对象是内置类或用户定义类的实例。除了属性之外,类还定义与数据相关的功能。

主要(标量)变量数组和其他对象可以使用强制转换运算符转换为对象数据类型。PHP 提供 stdClass 作为通用的空类,这对于动态添加属性和强制转换非常有用。

语法

要声明一个类的对象,我们需要使用 new 语句。

class myclass
{
   ..
   ..
}
$obj=new myclass;

示例

 在线演示

<?php
class SayHello{
   function hello(){
      echo "Hello World";
   }
}
$obj=new SayHello;
$obj->hello();
?>

输出

这将产生以下结果:

Hello World

stdClass 的对象最初为 null。我们可以动态添加属性。

示例

 在线演示

<?php
$obj=new stdClass;
$obj->name="Deepak";
$obj->age=21;
$obj->marks=75;
print_r($obj);
?>

输出

这将产生以下结果:

stdClass Object(
   [name] => Deepak
   [age] => 21
   [marks] => 75
)

数组可以像下面这样强制转换为对象:

示例

 在线演示

<?php
$arr=array("name"=>"Deepak", "age"=>21, "marks"=>75);
$obj=(object)$arr;
print_r($obj);
?>

输出

这将产生以下结果:

stdClass Object(
   [name] => Deepak
   [age] => 21
   [marks] => 75
)

相反,对象可以强制转换为数组:

示例

 在线演示

<?php
$obj=new stdClass;
$obj->name="Deepak";
$obj->age=21;
$obj->marks=75;
$arr=(array)$obj;
print_r($arr);
?>

输出

这将产生以下结果:

Array(
   [name] => Deepak
   [age] => 21
   [marks] => 75
)

任何标量类型的变量也可以通过类型强制转换转换为对象。标量变量的值成为对象 标量 属性的值。

示例

 在线演示

<?php
$name="Deepak";
$age=21;
$percent=75.50;
$obj1=(object)$name;
print_r($obj1);
$obj2=(object)$age;
print_r($obj2);
$obj3=(object)$percent;
print_r($obj3);
?>

输出

这将产生以下结果:

stdClass Object(
   [scalar] => Deepak
)
stdClass Object(
   [scalar] => 21
)
stdClass Object(
   [scalar] => 75.5
)

更新于:2023年10月4日

3万+ 次浏览

启动您的 职业生涯

完成课程获得认证

开始学习
广告