Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/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_Arrays_Extract - Fatal编程技术网

Php 通过数组循环提取不同于每个数组的值

Php 通过数组循环提取不同于每个数组的值,php,arrays,extract,Php,Arrays,Extract,在遍历这些数组时遇到一些问题,我在每个数组中有4个相同的属性 fstransid、前缀、nr和日期,其余的“名称”、“fsa_代码”、“fsa_名称”、“借项_acc”和“贷项_acc”我想在以下5个数组中提取它们1->5 最好的方法是什么 array(18) { [0]=> array(9) { ["fstransid"]=> string(4) "4019" ["prefix"]=> string(3) "PSF" ["nr"

在遍历这些数组时遇到一些问题,我在每个数组中有4个相同的属性 fstransid、前缀、nr和日期,其余的“名称”、“fsa_代码”、“fsa_名称”、“借项_acc”和“贷项_acc”我想在以下5个数组中提取它们1->5

最好的方法是什么

array(18) {
  [0]=>
  array(9) {
    ["fstransid"]=>
    string(4) "4019"
    ["prefix"]=>
    string(3) "PSF"
    ["nr"]=>
    string(3) "854"
    ["date"]=>
    string(10) "2012-06-05"
    ["name"]=>
    string(33) "MY NAME"
    ["fsa_code"]=>
    string(4) "1681"
    ["fsa_name"]=>
    string(17) "asdfasdfasdf"
    ["debits_acc"]=>
    string(6) "546.94"
    ["credits_acc"]=>
    string(4) "0.00"
  }
  [1]=>
  array(9) {
    ["fstransid"]=>
    string(4) "4019"
    ["prefix"]=>
    string(3) "PSF"
    ["nr"]=>
    string(3) "854"
    ["date"]=>
    string(10) "2012-06-05"
    ["name"]=>
    string(33) "MY NAME"
    ["fsa_code"]=>
    string(4) "2621"
    ["fsa_name"]=>
    string(8) "asafafasdfsas"
    ["debits_acc"]=>
    string(4) "0.00"
    ["credits_acc"]=>
    string(5) "60.75"
  }
  [2]=>
  array(9) {
    ["fstransid"]=>
    string(4) "4019"
    ["prefix"]=>
    string(3) "PSF"
    ["nr"]=>
    string(3) "854"
    ["date"]=>
    string(10) "2012-06-05"
    ["name"]=>
    string(33) "MY NAME"
    ["fsa_code"]=>
    string(4) "3540"
    ["fsa_name"]=>
    string(5) "sfdsdfsfssssssssssss"
    ["debits_acc"]=>
    string(4) "0.00"
    ["credits_acc"]=>
    string(5) "60.71"
  }
  [3]=>
  array(9) {
    ["fstransid"]=>
    string(4) "4019"
    ["prefix"]=>
    string(3) "PSF"
    ["nr"]=>
    string(3) "854"
    ["date"]=>
    string(10) "2012-06-05"
    ["name"]=>
    string(33) "MY NAME"
    ["fsa_code"]=>
    string(4) "6060"
    ["fsa_name"]=>
    string(27) "kostnader"
    ["debits_acc"]=>
    string(4) "9.00"
    ["credits_acc"]=>
    string(4) "0.00"
  }
  [4]=>
  array(9) {
    ["fstransid"]=>
    string(4) "4019"
    ["prefix"]=>
    string(3) "PSF"
    ["nr"]=>
    string(3) "854"
    ["date"]=>
    string(10) "2012-06-05"
    ["name"]=>
    string(33) "MY NAME"
    ["fsa_code"]=>
    string(4) "6064"
    ["fsa_name"]=>
    string(12) "asdfasdfasdsdssdssds"
    ["debits_acc"]=>
    string(5) "11.06"
    ["credits_acc"]=>
    string(4) "0.00"
  }
  [5]=>
  array(9) {
    ["fstransid"]=>
    string(4) "4019"
    ["prefix"]=>
    string(3) "PSF"
    ["nr"]=>
    string(3) "854"
    ["date"]=>
    string(10) "2012-06-05"
    ["name"]=>
    string(33) "MY NAME"
    ["fsa_code"]=>
    string(4) "3002"
    ["fsa_name"]=>
    string(35) "assssdsdsdsd"
    ["debits_acc"]=>
    string(4) "0.00"
    ["credits_acc"]=>
    string(6) "445.54"
  }

您可以使用foreach,例如:

foreach($multi_array as $single_array){ foreach($single_array as $key => $value){ echo $key.":".$value; } } foreach($multi_数组作为$single_数组){ foreach($key=>$value的单个数组){ echo$key.“:”$value; } } 试试这个

//$array is your array

//Array with the identical values
$identical_arr = array_slice($array[0], 0, 4);

//Array of repeated values in arrays
foreach ($array as $inner_array) {
  $differ_arr[] = array_slice($inner_array, 4);
}

如果将所有数组放入
$array
,这将循环遍历它们,并根据键/值找到交集(即,它将找到键和值相同的数组之间的所有元素)。

您的预期输出是什么。。你能添加我可以使用的数组吗
$result = array();
foreach ($arrays as $array) {
   if (!isset($prev_array)) {
      $prev_array = $array;
   }
   else {
      $result = array_intersect_assoc($prev_array, $array);
   }
}