in_array () не работа

Я думаю, что существует большое недоразумение об использовании Шаблона "одиночка". Большинство комментариев здесь называет его местом для доступа к глобальным данным. Мы должны быть осторожными здесь - Singleton, как шаблон не для доступа globals.

Singleton должна использоваться для имения только один экземпляр из данного класса. Репозиторий Шаблона имеет большую информацию о Singleton.

5
задан jason 14 November 2009 в 01:24
поделиться

4 ответа

If your file uses Windows linebreaks (lines end in \r\n), you'll get an invisible \r character at the end of each of your strings. Test for it by running strlen() on one of them:

echo $array[0] . ': ' . strlen($array[0]) . ' chars';

If you get something like

12345: 6 chars

You know that's the problem! You can get rid of these characters after exploding the array using array_map() with trim():

$array = array_map('trim', $array);
24
ответ дан 18 December 2019 в 05:49
поделиться

Here is what I came up with that worked:

<?php

$file = file_get_contents("common.txt"); 

$array = explode("\n", $file); 

$pass = "snoopy";

if(in_array($pass, $array) == true) {     
    echo "it's in the array";     
}else {    
    echo "it's not";    
}

?>
2
ответ дан 18 December 2019 в 05:49
поделиться

you may want to use trim on that too. could be invisible chars you are not seeing by eye.

2
ответ дан 18 December 2019 в 05:49
поделиться

is $pass a value of 0 - 31?

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

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