Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Поиск по массиву

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Поиск по массиву
AnteFil
Отправлено: 25 Июня, 2014 - 06:47:59
Post Id


Гость


Покинул форум
Сообщений всего: 88
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




Открываю документ примерно с таким содержанием:
Иванов
Петров
Сидоров
Магнатулин
Бедуршов
Камолин
Выхухоль
Бердыщев
Черезаборногузадерищенко

и мне нужно найти или 1 или 2 или 3 фамилии в случае обнаружения сказать мол найден в случае отсутсвия сказать мол нет такгого
Делаю я вот так
PHP:
скопировать код в буфер обмена
  1. $file = file_get_contents('D:\test.txt');
  2. $arr = array($file);
  3. if(in_array('Сидоров', $file))
  4. echo 'Значение есть в массиве';
  5. else echo 'Значения в массиве нет';

Но найти его почему то не получаеться
 
 Top
DelphinPRO
Отправлено: 25 Июня, 2014 - 08:47:22
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




PHP:
скопировать код в буфер обмена
  1. $file = file('D:\test.txt');
  2. if(in_array('Сидоров', $file))
  3. echo 'Значение есть в массиве';
  4. else echo 'Значения в массиве нет';


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
AnteFil
Отправлено: 25 Июня, 2014 - 08:54:38
Post Id


Гость


Покинул форум
Сообщений всего: 88
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




Массив создать получилось однако поиск почему то не работает
PHP:
скопировать код в буфер обмена
  1. $file = file_get_contents('D:\test.txt');
  2. $pieces = explode("\r\n", $file);
  3. $man = array($pieces);
  4. if(in_array('777', $man))
  5. echo 'Значение есть в массиве';
  6. else echo 'Значения в массиве нет';
  7. print_r($man);
 
 Top
LIME
Отправлено: 25 Июня, 2014 - 08:57:36
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




3 стр выбросить
 
 Top
AnteFil
Отправлено: 25 Июня, 2014 - 09:04:21
Post Id


Гость


Покинул форум
Сообщений всего: 88
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




LIME пишет:
3 стр выбросить


ООО Спасибо заработало!
(Добавление)
Такой вот вопрос а если я буду искать не 1 элемент а 2 или 10 как быть в такой ситуации??
 
 Top
LIME
Отправлено: 25 Июня, 2014 - 09:48:48
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




 
 Top
AnteFil
Отправлено: 25 Июня, 2014 - 11:07:23
Post Id


Гость


Покинул форум
Сообщений всего: 88
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




И наверно последний вопрос как теперь проверить. У меня получаеться что если есть совпадения то в массиве появляються данные если сопадение нет то массив пустой.
(Добавление)
Поторопился с вопросом
PHP:
скопировать код в буфер обмена
  1. if (!empty($array)){
  2.     echo $array;
  3.  }else{
  4.     echo 'false';
  5.  }
 
 Top
LIME
Отправлено: 25 Июня, 2014 - 11:12:02
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




AnteFil пишет:
echo $array;
это всегда будет слово "Array"
var_dump
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB