项目的 php 索引

2022-08-30 10:30:47

我有一个数组,看起来像这样:

$fruit = array('apple','orange','grape');

如何在上面的数组中找到特定项目的索引?(例如,值“橙色”)


答案 1

尝试array_search功能。

从手册中的第一个示例中可以看出:

<?php
$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');

$key = array_search('green', $array); // $key = 2;
$key = array_search('red', $array);   // $key = 1;
?>

一句警告

比较结果时,请确保使用运算符显式测试值。false===

由于 PHP 中的数组从 0 开始,因此,如果要搜索的元素是数组中的第一个元素,则将返回值 0。

虽然 0 是有效结果,但它也是一个假值,这意味着以下内容将失败:

<?php
    $array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');   

    $key = array_search('blue',$array);

    if($key == false) {
        throw new Exception('Element not found');
    }
?>

这是因为运算符检查相等性(通过类型杂耍),而运算符检查标识=====


答案 2

请记住,如果您认为可以多次找到搜索项,则应使用array_keys(),因为它将返回所有匹配值的键,而不仅仅是第一个匹配键array_search())。

问候。