PHP返回2D数组的第二个值

时间:2016-10-19 16:36:00

标签: php arrays recursion 2d

我有以下PHP代码:

$special_files = array(
        array("Turnip", "Tweed"),
        array("Donald", "Trump")
    );

我希望能够通过识别第一个来获取嵌套数组中的第二个值。例如: if_exists(" Donald")会返回"特朗普"

我试图通过阵列进行递归,但是在识别出第一个值后,我对如何选择第二个值感到茫然。

任何帮助将不胜感激

3 个答案:

答案 0 :(得分:0)

好吧,您可以尝试以下方法:

foreach ($special_files as $special_file) {
    $i = 1;
    foreach ($special_file as $element) {
        if ($i==2) {
            echo ("Second value is: " . $element);
            break;
        }
        $i++;
    }
}

答案 1 :(得分:0)

您可以使用以下内容:

$special_files = array(
        array("Turnip", "Tweed"),
        array("Donald", "Trump")
    );

$search_val = "Donald";
$key = array_search($search_val, array_column($special_files,0));

$output = $special_files[$key][1];  //outputs "Trump"

Here是一个工作样本。

答案 2 :(得分:0)

您可以提取[1]元素并按[0]元素对其进行索引:

$lookup = array_column($special_files, 1, 0);
$result = isset($lookup['Donald']) ?: false;

$lookup数组产生:

Array
(
    [Turnip] => Tweed
    [Donald] => Trump
)