Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.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 如何遍历SimpleXMLElement对象数组并返回节点默认值?_Php_Arrays_Simplexml - Fatal编程技术网

Php 如何遍历SimpleXMLElement对象数组并返回节点默认值?

Php 如何遍历SimpleXMLElement对象数组并返回节点默认值?,php,arrays,simplexml,Php,Arrays,Simplexml,我试图获得每个字段的默认值,但我就是不知道如何循环遍历所有对象。尝试使用json_解码将它们转换为简单数组,但不清楚要循环什么 这是: SimpleXMLElement Object ( [@attributes] => Array ( [name] => params ) [fieldset] => Array ( [0] => SimpleXMLEleme

我试图获得每个字段的默认值,但我就是不知道如何循环遍历所有对象。尝试使用json_解码将它们转换为简单数组,但不清楚要循环什么

这是:

SimpleXMLElement Object
(
    [@attributes] => Array
        (
            [name] => params
        )

    [fieldset] => Array
        (
            [0] => SimpleXMLElement Object
                (
                    [@attributes] => Array
                        (
                            [name] => Cat1
                        )

                    [field] => SimpleXMLElement Object
                        (
                            [@attributes] => Array
                                (
                                    [name] => 
                                    [type] => list
                                    [default] => 1
                                )
                        )
                )

            [1] => SimpleXMLElement Object
                (
                    [@attributes] => Array
                        (
                            [name] => Item2
                        )

                    [field] => Array
                        (
                            [0] => SimpleXMLElement Object
                                (
                                    [@attributes] => Array
                                        (
                                            [name] => post1
                                            [type] => text
                                            [default] => 5
                                        )
                                )

                            [1] => SimpleXMLElement Object
                                (
                                    [@attributes] => Array
                                        (
                                            [name] => post2
                                            [type] => text
                                            [default] => 18
                                        )
                                )

                            [2] => SimpleXMLElement Object
                                (
                                    [@attributes] => Array
                                        (
                                            [name] => post3
                                            [type] => text
                                            [default] => 15
                                        )

                                    [option] => Array
                                        (
                                            [0] => Blue
                                            [1] => Green
                                        )
                                )
                        )
                )

                      [2] => SimpleXMLElement Object
                (
                    [@attributes] => Array
                        (
                            [name] => Cat2
                        )

                    [field] => Array
                        (
                            [0] => SimpleXMLElement Object
                                (
                                    [@attributes] => Array
                                        (
                                            [name] => post6
                                            [type] => text
                                            [default] => 3
                                        )
                                )

                            [1] => SimpleXMLElement Object
                                (
                                    [@attributes] => Array
                                        (
                                            [name] => post7
                                            [type] => text
                                            [default] => 36
                                        )
                                )

                            [2] => SimpleXMLElement Object
                                (
                                    [@attributes] => Array
                                        (
                                            [name] => post7
                                            [type] => text
                                            [default] => 88
                                        )
                                )
                        )
                )
)
试试这个(其中
$xml
是您的根对象)

foreach($xml->fieldset as $fieldset) {
    foreach($fieldset->field as $field) echo (string)$field['default'];
}