@game802

В чем может быть проблема считывания файла mb_stripos'ом?

Добрый день уважаемые знатоки.
У меня есть функция, в которую передается название файла:
function getFileTypeBlock($read_subject) {
  if (mb_stripos(string $read_subject, 'новинки')) return 1;
  if (mb_stripos(string $read_subject, 'прайс')) return 2;
  if (mb_stripos(string $read_subject, 'книги')) return 6;
  if (mb_stripos(string $read_subject, 'игры')) return 3;
  if (mb_stripos(string $read_subject, 'канц')) return 4;
  if (mb_stripos(string $read_subject, 'учебники')) return 5;
  return 0;
}

Но не все названия правильно считываются, в чем может быть причина?
Я проверил вхождения названий файлов и там проблем не обнаружил...

af865569259940f297cada3621068aea.png
Буду благодарен за любую помощь в решении данного вопроса. Спасибо!
  • Вопрос задан
  • 123 просмотра
Решения вопроса 1
@game802 Автор вопроса
проблема не с кодировкой, а с !== false
Было:
if (mb_stripos(string $read_subject, 'новинки')) return 1;

Стало:
if (mb_stripos(string $read_subject, 'новинки') !== false) return 1;

Алексей
mb_stripos как и stripos возвращает значение начиная с "нуля"

Спасибо всем за помощь!
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
romy4
@romy4
Exception handler
> mb_stripos(string $read_subject, 'прайс')
кодировка вашего файла какая? кодировкая для mb_* какая? кодировка входящего файла какая?

и что значит mb_stripos(string $read_subject, 'прайс')
string перед $read_subject? php 7.1 например ругается на такую конструкцию
Ответ написан
slo_nik
@slo_nik Куратор тега PHP
Добрый день.
Что значит "Но не все названия правильно считываются"?
Кодировка?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽