Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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 如何";摘录;多维数组中的值_Php_Multidimensional Array - Fatal编程技术网

Php 如何";摘录;多维数组中的值

Php 如何";摘录;多维数组中的值,php,multidimensional-array,Php,Multidimensional Array,我无法确定如何从该数组中获取所需的值:::我需要的3辆车的值为 [class]=>span3 scrape\u img图像Href&image src [class]=>价格刮擦价格价格 [class]=>刮取品牌品牌 [class]=>刮擦年度年度 我试着通过经历来解决这个问题,但没有多大成功 Array ( [query] => Array ( [count] => 12 [created] => 20

我无法确定如何从该数组中获取所需的值:::我需要的3辆车的值为

  • [class]=>span3 scrape\u img图像Href&image src
  • [class]=>价格刮擦价格价格
  • [class]=>刮取品牌品牌
  • [class]=>刮擦年度年度
  • 我试着通过经历来解决这个问题,但没有多大成功

    Array
    (
        [query] => Array
            (
                [count] => 12
                [created] => 2013-02-04T17:46:34Z
                [lang] => en-US
                [results] => Array
                    (
                        [div] => Array
                            (
                                [0] => Array
                                    (
                                        [class] => span3 scrape_img
                                        [span] => Array
                                            (
                                                [class] => scrape
                                                [a] => Array
                                                    (
                                                        [href] => http://cant-reveal-this.com/cars/hyundai/ix35-2-0gls-auto/
                                                        [img] => Array
                                                            (
                                                                [alt] => Featured Image
                                                                [src] => /wp-content/uploads/2013/02/01863-270x150.jpg
                                                            )
                                                    )
                                            )
                                    )
    
                                [1] => Array
                                    (
                                        [class] => price scrape_price
                                        [p] => From R249,900
                                    )
    
                                [2] => Array
                                    (
                                        [class] => span3 scrape_img
                                        [span] => Array
                                            (
                                                [class] => scrape
                                                [a] => Array
                                                    (
                                                        [href] => http://cant-reveal-this.com/cars/hyundai/ix35-2-0gls/
                                                        [img] => Array
                                                            (
                                                                [alt] => Featured Image
                                                                [src] => /wp-content/uploads/2013/02/1930-270x150.jpg
                                                            )
                                                    )
                                            )
                                    )
    
                                [3] => Array
                                    (
                                        [class] => price scrape_price
                                        [p] => From R239,900
                                    )
    
                                [4] => Array
                                    (
                                        [class] => span3 scrape_img
                                        [span] => Array
                                            (
                                                [class] => scrape
                                                [a] => Array
                                                    (
                                                        [href] => http://cant-reveal-this.com/cars/ford/everest-3-0-tdci-xlt-4/
                                                        [img] => Array
                                                            (
                                                                [alt] => Featured Image
                                                                [src] => /wp-content/uploads/2013/02/1876-270x150.jpg
                                                            )
                                                    )
                                            )
                                    )
    
                                [5] => Array
                                    (
                                        [class] => price scrape_price
                                        [p] => From R279,900
                                    )
                            )
    
                        [span] => Array
                            (
                                [0] => Array
                                    (
                                        [class] => scrape_make
                                        [strong] => Make
                                        [content] => hyundai
                                    )
    
                                [1] => Array
                                    (
                                        [class] => scrape_year
                                        [strong] => Year
                                        [content] => 2011
                                    )
    
                                [2] => Array
                                    (
                                        [class] => scrape_make
                                        [strong] => Make
                                        [content] => hyundai
                                    )
    
                                [3] => Array
                                    (
                                        [class] => scrape_year
                                        [strong] => Year
                                        [content] => 2011
                                    )
    
                                [4] => Array
                                    (
                                        [class] => scrape_make
                                        [strong] => Make
                                        [content] => ford
                                    )
    
                                [5] => Array
                                    (
                                        [class] => scrape_year
                                        [strong] => Year
                                        [content] => 2011
                                    )
                            )
                    )
            )
    )
    
    试试这个: 如果此数组位于名为
    $array

    1-
    $array['query']['result']['div'][0]['a']['href']

    2-
    $array['query']['result']['div'][1]['p']

    3-
    $array['query']['result']['span'][0]['class']

    要调试并找到所需的值,请尝试这样做

    var_dump($array['query']);
    
    然后


    …etc

    看起来您可以从评论和其他答案中找到答案。不过,我要澄清,我对这个问题的评论有点误导性,因此你可以不予理会。我实际上假设
    class
    引用了PHP对象,而实际上
    class
    只是字符串的一个键(数组在我看来就像解析的HTML/XML)。当您在注释中发布数组的
    var\u dump()
    时,我意识到了这一点

    问题是阵列结构相当复杂,所有嵌套都在进行,因此可能很难看到是什么。总的来说,我同意另一个答案;使用
    var\u dump()
    进行调试是一种很好的检查方法。以下是我对答案的看法

    假设数组变量为
    $array

    一,

    二,

    三,

    四,


    类元素的访问方式不同于数组元素(使用
    ->
    而不是
    []
    )@Walfie您能详细说明一下吗?您能试试这个并告诉我它是否返回了什么吗
    $array['query']['results']['div'][0]->span[0]->a['href']
    @Walfie我得到这个错误>>>致命错误:无法在中使用字符串偏移量作为数组:::不确定我是否做对了这就是我创建$array变量$array='array([query]=>array([count]=>12…)'你的意思是你文章中的数组不是你代码中某个变量的
    print\r()
    的结果吗?你首先是如何得到数组列表的?@khane I得到以下错误>>>致命错误:无法将字符串偏移量用作array@khane如果我添加了eg.['a'],当我使用$array['query']['result']['div'][0]时,请参见上面的注释我有错误。我知道,我给出的答案是不正确的,但是,试着遵循调试方法,我个人通常使用此调试方法来查找值。因为此数组中有object和array元素,有时会使用“->”表示object和['namekey']对于array.THX和@whalfie,我可以用您的建议来解决它,对于您的反馈,您演示的方式是我如何获得我的所有值。
    var_dump($array['query']['result']);
    
    $array['query']['results']['div'][0]['span']['a']['href']
    $array['query']['results']['div'][0]['span']['a']['img']['src']
    
    $array['query']['results']['div'][1]['span']['p']
    
    $array['query']['results']['span'][0]['content']
    
    $array['query']['results']['span'][1]['content']