查找n在数组中最后出现的位置
时间: 2024-03-22 21:38:09 浏览: 21
要查找一个元素在 PHP 数组中最后出现的位置,可以使用 `array_search()` 函数结合 `array_reverse()` 函数来实现。`array_reverse()` 函数可以将数组中的元素顺序颠倒,从而使得我们可以在颠倒后的数组中查找元素最后出现的位置。下面是一个示例:
```php
$numbers = array(2, 4, 6, 8, 10, 12, 14, 10, 16, 18, 20);
$position = count($numbers) - 1 - array_search(10, array_reverse($numbers, true));
if ($position >= 0) {
echo "The last position of 10 is: " . $position;
} else {
echo "10 was not found in the array.";
}
```
这个示例中,我们定义了一个包含十一个元素的数组 `$numbers`,其中包含两个值为 `10` 的元素。然后,我们使用 `array_reverse()` 函数将数组颠倒顺序,并使用 `array_search()` 函数查找颠倒后的数组中 `10` 元素的位置。由于 `array_search()` 函数返回的位置是颠倒后的数组中的位置,因此我们需要使用 `count()` 函数获取数组长度,并从颠倒后的位置中减去 `1` 来得到该元素在原数组中的位置。最后,我们检查 `$position` 是否大于等于 `0`,如果是,则输出 `10` 元素在数组中最后出现的位置。输出结果应该是:
```
The last position of 10 is: 8
```
注意,这个方法只能找到最后一个匹配的元素位置,如果数组中有多个相同的元素,则无法找到前面的匹配位置。如果需要查找所有匹配位置,则需要使用循环和条件语句来实现。