Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php中循环stdClass对象时出现的问题_Php_Json - Fatal编程技术网

Php中循环stdClass对象时出现的问题

Php中循环stdClass对象时出现的问题,php,json,Php,Json,我在使用php循环json对象时遇到了一个奇怪的问题。这是我的数据格式 stdClass Object ( [userform] => Array ( [0] => stdClass Object ( [id] => 69 [product] => testuser ) [1] => stdClass Object

我在使用php循环json对象时遇到了一个奇怪的问题。这是我的数据格式

stdClass Object
(
[userform] => Array
    (
        [0] => stdClass Object
            (
                [id] => 69
                [product] => testuser
            )

        [1] => stdClass Object
            (
                [id] => 70
                [product] => testuser
            )

        [2] => stdClass Object
            (
                [id] => 71
                [product] => testuser
            )

        [3] => stdClass Object
            (
                [id] => 72
                [product] => testuser
            )

        [4] => stdClass Object
            (
                [id] => 73
                [product] => testuser
            )

        [5] => stdClass Object
            (
                [id] => 74
                [product] => testuser
            )

        [6] => stdClass Object
            (
                [id] => 75
                [product] => testuser
            )

        [7] => stdClass Object
            (
                [id] => 76
                [product] => testuser
            )

        [8] => stdClass Object
            (
                [id] => 77
                [product] => testuser
            )

        [9] => stdClass Object
            (
                [id] => 78
                [product] => testuser
            )

        [10] => stdClass Object
            (
                [id] => 79
                [product] => testuser
            )

        [11] => stdClass Object
            (
                [id] => 80
                [product] => testuser
            )

        [12] => stdClass Object
            (
                [id] => 81
                [product] => testuser
            )

        [13] => stdClass Object
            (
                [id] => 82
                [product] => testuser
            )

        [14] => stdClass Object
            (
                [id] => 83
                [product] => testuser
            )

        [15] => stdClass Object
            (
                [id] => 84
                [product] => testuser
            )

        [16] => stdClass Object
            (
                [id] => 85
                [product] => testuser
            )

        [17] => stdClass Object
            (
                [id] => 86
                [product] => testuser
            )

        [18] => stdClass Object
            (
                [id] => 87
                [product] => testuser
            )

        [19] => stdClass Object
            (
                [id] => 88
                [product] => testuser
            )

        [20] => stdClass Object
            (
                [id] => 89
                [product] => testuser
            )

    )

)
但是这个循环抛出以下错误

尝试获取中非对象的属性

请告诉我如何从上述格式中读取产品属性值


感谢所有foreach应该在
$data->userform
,而不仅仅是
$data

foreach($data->userform as $key=>$row){
             if(isset($row->product)){
               print_r($key);
               print_r($row->product);  
             }else{
               //product property is not set
             }
         }

您有一个输入错误:
if(isset($roow
@mavrosxristoforos)这是另一个错误,但是
if(isset($roow
始终返回false他/她有其他错误要查找您的意思是
$data->userform as$key=>$row
?是的,这是打字错误,但总是执行其他条件在获得相同错误时,我用$data变量fomat编辑了问题。如果该结构与您提到的100%相同,则无法再获得该错误,使用相同的名称。是的,这不是抛出错误,但我如何从该数据格式读取产品属性值?只有设置了才能读取,如果未设置,如何读取?因此您的
print\r($row->product);
必须进入
if
的内部,而不是
else
的内部。请参见编辑