如何从 object(stdClass) 中获取值?

2022-08-30 10:15:36

使用PHP,我必须以如下格式解析一个字符串进入我的代码:

object(stdClass)(4) { 
    ["Title"]=> string(5) "Fruit" 
    ["Color"]=> string(6) "yellow" 
    ["Name"]=> string(6) "banana" 
    ["id"]=> int(3) 
}

我相信有一个简单的解决方案,但我似乎找不到它...如何获得颜色和名称?

非常感谢。


答案 1

你可以做:等等。$obj->Title

或者你可以把它变成一个数组:

$array = get_object_vars($obj);

答案 2

您可以创建 StdClass 对象并从中访问方法,如下所示:

$obj = new StdClass;

$obj->foo = "bar";
echo $obj->foo;

我建议对 StdClass 进行子类化或创建自己的泛型类,以便您可以提供自己的方法。

将 StdClass 对象转换为数组:

您可以使用以下代码执行此操作:

$array = get_object_vars($obj);

看一看: http://php.net/manual/en/language.oop5.magic.php http://krisjordan.com/dynamic-properties-in-php-with-stdclass


推荐