Поиск элемента в массиве с использованием PHP

#php

#php

Вопрос:

Я хочу выполнить поиск элемента типа «Январь» или «Февраль» в массиве, который выглядит следующим образом

  Array
(
   [0] => January

   [1] => February

   [2] => March

   [3] => April

)
  

Это то, что я пробовал до сих пор. Но не работает.

 if ( in_array("January", $date_array) ) {
        echo "Found item in Array";
} else {
        echo "Didn't find item in Array";
}
  

Результат:

 Didn't find item in Array
  

Это результат var_dump()

  array(4) {
  [0]=>
  string(9) "January
  "
  [1]=>
  string(10) "February
  "
  [2]=>
  string(7) "March
  "
  [3]=>
  string(7) "April
  "  
  }
  

Комментарии:

1. var_dump ваш массив. Ваш код работает нормально 3v4l.org/rpmuU Итак, может быть, ваш элемент массива не является 'January' , или, может быть 'January ' (с пробелом).

2. Проверьте свое arrayname

3. var_dump показывает, что в январе есть 9 символов. Но в word January — 7. Итак, в нем есть несколько непечатных символов. О, это разрыв строки .

Ответ №1:

Не знаю, откуда берутся разрывы строк, но вы можете удалить их, например, с помощью array_map :

 $date_array = array_map('trim', $date_array);
// and then use `in_array`