【问题标题】:How to get array using nested foreach?如何使用嵌套的foreach获取数组?
【发布时间】:2019-09-13 23:52:16
【问题描述】:

我正在从网站的 json 文件中获取数据。

这是来自 URL 的示例 json 数据。

Array
(
    [1] => TEXT1
    [2] => Array
        (
            [0] => Array
                (
                    [sample1] => text1
                    [sample2] => text2
)
)
)

我已尝试使用此代码。

$json = file_get_contents('http://www.example.com/file.json');
$datas = json_decode($json,true);        


foreach ($datas as $key => $row) {

            $data[] = $row;
            //unset($tempData[1])
            foreach ($datas as $key2 => $row1) {
                $data1[] = $row1;
                unset($data1[0]);
            }
        }

print_r($data1); exit;

我想获取第一个数组的数据 TEXT1 和其他数组数据 sample1sample2

【问题讨论】:

  • TEXT1 是一个值! sample1 和 sample2 是关联数组键??也许如果您向我们展示您想要掌握的内容,我们可能会更好地理解这个问题
  • 给定的代码有什么问题?有什么不工作?如果是这种情况,您尝试过什么使其发挥作用?

标签: php arrays json laravel foreach


【解决方案1】:

只是分享我对我的问题的回答及其现在的工作。

 foreach ($datas as $row) {
            $tempData = $row;
        }
        $json = json_encode($tempData);
        $array = json_decode($json, true);

        $lastArray = [];
        foreach ($array as $key => $row1){
            $lastArray[$key] = $row1;
    }

【讨论】:

    【解决方案2】:

    只需根据数组中的索引,用方括号检索数据即可。

    您可以在这里阅读:https://www.w3schools.com/php/php_arrays.asp

    并在此处访问所需索引的代码

    $json = file_get_contents('http://www.example.com/file.json');
    $data = json_decode($json,true);        
    
    $data[1]  // TEXT1
    $data[2][0]['sample1'] // sample1
    $data[2][0]['sample2'] // sample1
    

    要动态获取数据,您可以使用递归技术

    $json = file_get_contents('http://www.example.com/file.json');
    $data = json_decode($json,true);     
    $newData = new RecursiveIteratorIterator(new RecursiveArrayIterator($data));   //  Standard PHP Library (SPL) 
    
    print_r($newData);
    

    祝你好运,

    【讨论】:

      猜你喜欢
      • 2018-06-16
      • 2015-04-12
      • 1970-01-01
      • 1970-01-01
      • 2021-09-06
      • 2018-01-22
      • 2021-02-02
      • 1970-01-01
      • 2018-02-17
      相关资源
      最近更新 更多