Php 从多维数组中的值获取键

Php 从多维数组中的值获取键,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我有1500个英语同义词,格式如下: array(1521) { [0]=> array(2) { [0]=> string(5) "April" [1]=> string(3) "Apr" } [1]=> array(7) { [0]=> string(5) "China" [1]=> string(26) "People's Republic of China" [

我有1500个英语同义词,格式如下:

array(1521) {
  [0]=>
  array(2) {
    [0]=>
    string(5) "April"
    [1]=>
    string(3) "Apr"
  }
  [1]=>
  array(7) {
    [0]=>
    string(5) "China"
    [1]=>
    string(26) "People's Republic of China"
    [2]=>
    string(14) "mainland China"
    [3]=>
    string(15) "Communist China"
    [4]=>
    string(9) "Red China"
    [5]=>
    string(3) "PRC"
    [6]=>
    string(6) "Cathay"
  }
  [2]=>
  array(2) {
    [0]=>
    string(8) "December"
    [1]=>
    string(3) "Dec"
  }
  [3]=>
  array(4) {
    [0]=>
    string(5) "Earth"
    [1]=>
    string(5) "earth"
    [2]=>
    string(5) "world"
    [3]=>
    string(5) "globe"
  }

  ...

  [1519]=>
  array(2) {
    [0]=>
    string(4) "year"
    [1]=>
    string(10) "solar year"
  }
  [1520]=>
  array(2) {
    [0]=>
    string(4) "zero"
    [1]=>
    string(4) "null"
  }
}
我试图创建一个函数,它接受一个单词并返回子数组键

例:


我试图结合我在已经存在的stackoverflow问题上找到的一些示例,但没有任何东西符合我的需要

您可以使用
foreach
函数遍历数组中的所有值,然后使用
in_array
函数检查内部数组中是否存在该值:

function get_synonym_family($array, $word) {
    foreach($array as $key => $sub_array) {
        if (in_array($word, $sub_array)) {
            return $key;
        }
    }

    return false;
}

您可以使用
foreach
函数遍历数组中的所有值,然后使用
in_array
函数检查内部数组中是否存在该值:

function get_synonym_family($array, $word) {
    foreach($array as $key => $sub_array) {
        if (in_array($word, $sub_array)) {
            return $key;
        }
    }

    return false;
}

foreach
+
array\u search
@u\u mulder,我认为
foreach
+
在数组中
:)@Dekel真的吗<数组中的code>将返回
3
?返回的
应位于
foreach
中。
3
是第一级(不是第二级)。@u\u mulder,你可以检查我的答案
foreach
+
array\u search
@u\u mulder,我想
foreach
+
in\u array
:)@Dekel真的吗<数组中的code>将返回
3
?返回的
应位于
foreach
中。
3
在第一级(不是第二级)。@u\u mulder,你可以检查我的答案
<?php
$array = [1 => ['apple','ball'.'cat'],2 => ['foo'.'bar']];

function get_synonym_family($id, $array) {
   foreach ($array as $key => $val) {
       foreach($val as $a)
       {
          if($a == $id)
          {
              return $key;
          }
       }

   }
   return null;
}

echo searchForId('apple',$array);