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 )

