Поиск определенного символа внутри массива - PullRequest
3 голосов
/ 02 сентября 2010
$array = array('a', 'b', 'c', 'd', /*... letters from 3 alphabets*/);

$letter = 'some symbol, posted by user'; // real length = 1

Как узнать, является ли $letter одним из символов, перечисленных в $array?

Как, если $letter = 'G' и нет G в $array, ну тогда return false.


Да, я пробовал in_array(), но символов слишком много, есть ли другое (более короткое) решение?

Ответы [ 4 ]

4 голосов
/ 02 сентября 2010

in_array () http://ca.php.net/in_array

if(in_array($letter,$array)) {
  // your code
}

Другой способ будет сделать это

// THIS WAY
$array = array('a','b','c'); // and continue this way. 
$array = array_flip($array);

// OR THIS
$array = array('a'=>0,'b'=>0,'c'=>0);

// This will stay the same
if($array[$letter] != null) {
  // your code
}
0 голосов
/ 02 сентября 2010

Вы можете использовать строку вместо массива:

$letters = 'abcdefghi...';
$letter = 'a';

if (false !== strpos($letters, $letter)) {
    // valid letter
}
0 голосов
/ 02 сентября 2010

Проверьте функцию in_array () ... позволяет найти иголку (одну букву) в стоге сена (массив)

0 голосов
/ 02 сентября 2010
$IsInArray = in_array($letter, $array); //RETURNS TRUE OR FALSE
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...