[PHP]: Что делает array_search (), возвращаются, если ничто не было найдено?

Я бы использовал надстройку (vba), чтобы проверить ее, а затем перейти к чему-то более существенному, если вы хотите, играя вокруг, вы можете использовать что-то вроде этого

Sub EMAIL_TEST()

Dim olMail As MailItem

Set olMail = ActiveInspector.CurrentItem

' Pass properties from mail to access here

End Sub
15
задан Derek Adair 5 April 2010 в 22:43
поделиться

5 ответов

Цитата из справочной страницы array_search () :

Возвращает ключ для иглы, если это {{1 }} найдено в массиве, FALSE иначе .


Это означает, что вам нужно использовать что-то вроде:

$found = array_search($needle, $haystack);

if ($found !== false) {
    // do stuff
    // when found
} else {
    // do different stuff
    // when not found
}

Обратите внимание, что я использовал оператор ! == , который выполняет сравнение с учетом типа; см. Операторы сравнения , Подбор типов и Преобразование в логическое для получения дополнительной информации об этом; -)

46
ответ дан 1 December 2019 в 00:11
поделиться

Нужно стараться различать found, index 0 и not found для этого использования эти !== false тест. Пример:

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

$i = array_search('red', $array);
echo ($i !== false) ? $i : -1;  // 1

$i = array_search('blue', $array);
echo ($i !== false) ? $i : -1;  // 0

$i = array_search('blueee', $array);
echo ($i !== false) ? $i : -1;  // -1 i.e. not found
?>
0
ответ дан 1 December 2019 в 00:11
поделиться

, если вы просто проверяете, существует ли значение, можно использовать in_array .

4
ответ дан 1 December 2019 в 00:11
поделиться

array_search вернет FALSE, если ничего не найдено. Если он ДЕЙСТВИТЕЛЬНО найдет иглу, он вернет ключ массива для иглы.

Дополнительная информация: http://php.net/manual/en/function.array-search.php

1
ответ дан 1 December 2019 в 00:11
поделиться

Да, в списке рассылки разработчиков Emacs ведется долгое обсуждение интеграции диспетчера пакетов package.el в следующий основной выпуск Emacs: Интеграция package.el . Он автоматически загружает и устанавливает пакеты из ELPA (архив пакетов Emacs Lisp . Прочтите страницу установки , чтобы получить последнюю версию.

-121 --- 3909407) -

Из документации:

Ищет в стоге сена иглу и возвращает ключ, если он найден в массиве, в противном случае - FALSE.

1
ответ дан 1 December 2019 в 00:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: