PHP 对象

phpserver side programmingprogramming更新于 2025/8/19 9:07:17

定义和用法

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

可以使用强制类型转换运算符将主(标量)变量、数组和其他对象转换为对象数据类型。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
)

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

示例

<?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
)

相关文章