PHP поиск части строки в переменной

Neptoon
На сайте с 12.07.2011
Offline
126
1540

Есть переменная, содержащая ответ сервера. Нужно найти в ней определенной слово count и выдать сообщение по результату.

Переменная:

HTTP/1.1 200 OK Date: Sat, 5 Mar 2017 20:16:10 GMT Server: Apache/2.4.7 (Ubuntu) X-Powered-By: PHP/5.5.9-1ubuntu4.20 Set-Cookie: PHPSESSID=123; path=/ Expires: Thu, 11 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Set-Cookie: PHPSESSID=123; path=/ Set-Cookie: votes=2; expires=Mon, 14-Mar-2017 20:16:10 GMT; Max-Age=25920; path=/ Vary: Accept-Encoding Content-Type: text/html; charset=utf-8 X-Cache: MISS from cloud-data-flow X-Cache-Lookup: MISS from cloud-data-flow:38 Via: 1.1 cloud-data-flow (squid/3.5.23) Connection: keep-alive Transfer-Encoding: chunked {"status":"success","count":"555","txt":"\u0433\u043e\u043b\u043e\u0441\u043e\u0432"}1

Пробовал такой код, но как-то не срабатывает

if (strpos($webpage, 'count') !== false) {
echo 'найдено';} else {
echo 'не найдено';}

Как правильно?

Drive your way
Arsh
На сайте с 21.03.2007
Offline
199
#1
Neptoon:
Переменная:

Строка? А если спросить?

Neptoon
На сайте с 12.07.2011
Offline
126
#2

Ясно, что ничего не ясно

LEOnidUKG
На сайте с 25.11.2006
Offline
1750
#3

if (preg_match('@count@smi',$webpage)) {

echo 'найдено';} else {

echo 'не найдено';}

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
DV
На сайте с 01.05.2010
Offline
644
#4

preg_match более ресурсоёмко.

VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )
LEOnidUKG
На сайте с 25.11.2006
Offline
1750
#5
DenisVS:
preg_match более ресурсоёмко.

На IBM386 конечно, я бы не рекомендовал это делать, особенно в циклах.

R
На сайте с 31.08.2010
Offline
78
#6

http://www.php.su/strpos

Может так

if (strpos($webpage, 'count') != 0) {

echo 'найдено';

} else {

echo 'не найдено';

}

или ещё варианты

if (strpos($webpage, 'count') == 0) {

echo 'не найдено';

} else {

echo 'найдено';

}

Но по ссылке выше написано, что для проверки работы этой функции нужно использовать три знака равно вот так ===

Поэтому ещё как вариант

if (strpos($webpage, 'count') === 0) {

echo 'не найдено';

} else {

echo 'найдено';

}

Пробуйте, сам не проверял. Ну тут явно со сравнением проблемы.

edogs software
На сайте с 15.12.2005
Offline
775
#7
Neptoon:
Как правильно?

Правильно - убедиться что в $webpage действительно то содержимое, которое содержится у Вас в первой цитате.

Сам код у Вас корректный => в $webpage нет того содержимого, которое Вы утверждаете есть. Где-то потерялось так или иначе.

p.s.: Судя по ответу - возвращается нечто вроде json в теле страницы. Простая проверка всего ответа (включая заголовки) на count рано или поздно вылезет боком, т.к. count может оказаться и в другом контексте.

Разработка крупных и средних проектов. Можно с криптой. Разумные цены. Хорошее качество. Адекватный подход. Продаем lenovo legion в спб, дешевле магазинов, новые, запечатанные. Есть разные. skype: edogssoft
tommy-gung
На сайте с 22.11.2006
Offline
295
#8
Rokkkin:
Но по ссылке выше написано, что для проверки работы этой функции нужно использовать три знака равно вот так ===
Поэтому ещё как вариант
if (strpos($webpage, 'count') === 0) {

это не просто три знака равно - это проверка эквивалентности, и ноль там не катит :)

Здесь не могла быть ваша реклама

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий