[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: В matches хранятся значения с потолка
Astfreelancer
У меня такой код в случае, если совпадений с рег.выражением не найдено, выводит непонятно откуда берущиеся значения. Для тех же строк, для которых совпадения найдены, то все работает на ура. Чего я не понимаю?

function myfunc($item)
{
if (preg_match('/тут_рег_выражение/',$item,$matches)!==false)
return $matches[0];
return "";
}

foreach ($myarray as $item)
echo myfunc($item);
Placido
Покажите пример регулярного выражения, текста для поиска и соответствующий вывод "с потолка".
Astfreelancer
Placido, да у меня тут Excel-файл, библиотека phpExcel и собственно мой код, все это не выложишь, а если этот же код на каком-то простом примере проверить, то все благополучно работает.
Проблема в следующем: если совпадение с рег.выражением не найдено, то в $matches почему-то лежит то, что там было при прошлом вызове функции myfunc(). Никакие маневры вроде unset($matches), $matches = array() в начале тела функции myfunc() - не помогают.
Placido
Без остального кода сказать что-то определенное сложно.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.