Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.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 - Fatal编程技术网

在php中从给定数组获取子数组

在php中从给定数组获取子数组,php,Php,我有一个数组变量$data,它具有以下数组结构: Array ( [0] => Array ( [rowdata] => Array ( [0] => Array ( [wiecont_03] =>

我有一个数组变量$data,它具有以下数组结构:

Array
(
    [0] => Array
        (
            [rowdata] => Array
                (
                    [0] => Array
                        (

                            [wiecont_03] => 
                            [tevrc_04] => 
                            [opmerkTXT] => Overall NPS
                            [0] => Array-----------------------
                                (                              |
                                    [0] => rapport             |
                                    [1] => npsorg              |
                                    [3] => npsdetbe            | i want this
                                                                  part of the array
                                )-------------------------------

                        )

                    [1] => Array
                        (
                            [DOELGROEP] => 2
                            [KANTOOR] => 2
                            [OBLIGOCATEGORIE] => 3
                            [NAAM] => dfdf
                            [WEIGHT] => 0.95
                            [opmerkTXT] => Overall NPS
                            [0] => Array
                                (
                                    [1] => npsorg
                                    [3] => npsdetbe
                                )

                        )

                )

            [reason] => column values are not correct
        )

)
从上面的数组结构中,我想获取虚线所示的子数组(如果有的话)

所需输出:

                                 [0] => Array
                                (                              
                                    [0] => rapport             
                                    [1] => npsorg              
                                    [3] => npsdetbe            
                                )
                                 and 

                                  [0] => Array
                                (
                                    [1] => npsorg
                                    [3] => npsdetbe
                                )
我尝试的内容:我尝试了
array\u slice()
array\u chunks()
但在我的情况下,它们都不起作用


提前感谢

您的模式在所有情况下都是相同的,那么此功能就可以了

function getMyArray($array){
  $rowdata = $array[0]['rowdata'];

  $resultArray = array(); 
  foreach($rowdata as $val){
    $resultArray[] = $val[0];
  }

  return $resultArray;
}
用途:-

$array = "YOUR ARRAY HERE";
$result = getMyArray($array);

您的模式在所有情况下都是相同的,那么这个函数就可以了

function getMyArray($array){
  $rowdata = $array[0]['rowdata'];

  $resultArray = array(); 
  foreach($rowdata as $val){
    $resultArray[] = $val[0];
  }

  return $resultArray;
}
用途:-

$array = "YOUR ARRAY HERE";
$result = getMyArray($array);

您的模式在所有情况下都是相同的,那么这个函数就可以了

function getMyArray($array){
  $rowdata = $array[0]['rowdata'];

  $resultArray = array(); 
  foreach($rowdata as $val){
    $resultArray[] = $val[0];
  }

  return $resultArray;
}
用途:-

$array = "YOUR ARRAY HERE";
$result = getMyArray($array);

您的模式在所有情况下都是相同的,那么这个函数就可以了

function getMyArray($array){
  $rowdata = $array[0]['rowdata'];

  $resultArray = array(); 
  foreach($rowdata as $val){
    $resultArray[] = $val[0];
  }

  return $resultArray;
}
用途:-

$array = "YOUR ARRAY HERE";
$result = getMyArray($array);
您也可以这样做(简而言之):

演示:

输出

Array
(
    [0] => Array
        (
            [0] => rapport
            [1] => npsorg
            [3] => npsdetbe
        )

    [1] => Array
        (
            [1] => npsorg
            [3] => npsdetbe
        )

)
您也可以这样做(简而言之):

演示:

输出

Array
(
    [0] => Array
        (
            [0] => rapport
            [1] => npsorg
            [3] => npsdetbe
        )

    [1] => Array
        (
            [1] => npsorg
            [3] => npsdetbe
        )

)
您也可以这样做(简而言之):

演示:

输出

Array
(
    [0] => Array
        (
            [0] => rapport
            [1] => npsorg
            [3] => npsdetbe
        )

    [1] => Array
        (
            [1] => npsorg
            [3] => npsdetbe
        )

)
您也可以这样做(简而言之):

演示:

输出

Array
(
    [0] => Array
        (
            [0] => rapport
            [1] => npsorg
            [3] => npsdetbe
        )

    [1] => Array
        (
            [1] => npsorg
            [3] => npsdetbe
        )

)



大型数组是否遵循特定的模式?@DainisAbols不,它没有。这是主要的问题。那么,它是否至少总是深入3?@DainisAbols不,只有结构将始终保持不变。函数不会告诉我们太多,您尝试的具体代码是什么(即,显示您如何访问该阵列,以及您对哪个部分进行了切片/分块/解除保护)你对那部分做了什么来获取最终数据;那段代码给了你什么,为什么你认为它给了你这个?大数组是否遵循特定的模式?@DainisAbols不,它没有。这是主要的问题。好吧,它至少总是深入3吗?@DainisAbols不,只有结构将始终保持相同,因为函数不会请告诉我们,您尝试过的具体代码是什么(例如,显示您如何访问该数组,您分割/分块/解除隔离了哪个部分)你对那部分做了什么来获取最终数据;那段代码给了你什么,为什么你认为它给了你这个?大数组是否遵循特定的模式?@DainisAbols不,它没有。这是主要的问题。好吧,它至少总是深入3吗?@DainisAbols不,只有结构将始终保持相同,因为函数不会请告诉我们,您尝试过的具体代码是什么(例如,显示您如何访问该数组,您分割/分块/解除隔离了哪个部分)你对那部分做了什么来获取最终数据;那段代码给了你什么,为什么你认为它给了你这个?大数组是否遵循特定的模式?@DainisAbols不,它没有。这是主要的问题。好吧,它至少总是深入3吗?@DainisAbols不,只有结构将始终保持相同,因为函数不会请告诉我们,您尝试过的具体代码是什么(例如,显示您如何访问该数组,您分割/分块/解除隔离了哪个部分)你对那部分做了什么来获得最终数据;那段代码给了你什么,你认为它为什么给了你这个?非常感谢。如果我得不到其他更好的解决方案,几分钟后+1会将此标记为答案。再次感谢。再次感谢。需要更多帮助。如何从上述数组中删除最后2个元素?我尝试取消设置($data_failures[count($data_failures)-2]);但它不起作用您想从输出数组中删除吗?awlad:否。我想从原始数组中删除,即$arrThis数组中的$data:“0”=>数组(“1”=>“npsorg”,“3”=>“npsdetbe”。)?非常感谢。+1会在几分钟后将此标记为答案,如果我无法获得其他更好的解决方案。再次感谢。再次感谢。需要更多帮助。如何从上述数组中删除最后2个元素?我尝试了取消设置($data\U failures[计数($data\U failures)-2]);但它不起作用您想从输出数组中删除吗?awlad:不。我想从原始数组中删除,即$arrThis数组中的$data:“0”=>数组(“1”=>“npsorg”,“3”=>“npsdetbe”,)?非常感谢。+1会在几分钟后将此标记为答案,如果我无法获得其他更好的解决方案。再次感谢。再次感谢。需要更多帮助。如何从上述数组中删除最后2个元素?我尝试了取消设置($data\U failures[计数($data\U failures)-2]);但它不起作用您想从输出数组中删除吗?awlad:不。我想从原始数组中删除,即$arrThis数组中的$data:“0”=>数组(“1”=>“npsorg”,“3”=>“npsdetbe”,)?非常感谢。+1会在几分钟后将此标记为答案,如果我无法获得其他更好的解决方案。再次感谢。再次感谢。需要更多帮助。如何从上述数组中删除最后2个元素?我尝试了取消设置($data\U failures[计数($data\U failures)-2]);但它不起作用您想从输出数组中删除吗?awlad:不。我想从原始数组中删除,即$arrThis数组中的$data:“0”=>数组(“1”=>“npsorg”,“3”=>“npsdetbe”,)?