У меня есть некоторый код, который использует функцию stristr для извлечения данных, в которых я нуждаюсь.
Это дает мне это Предупреждение для каждого повторения цикла:
Warning: stristr() [function.stristr]: Empty delimiter in ... line 55
Код работает кроме этого Предупреждения. Вот код:
$data = stristr("$text", "$key");
$result = string_limit_words($data,2);
print "$result<BR>";
Как я избавляюсь от предупреждающего сообщения?
$data = $text;
if($key)
$data = stristr($data, $key);
$result = string_limit_words($data,2);
print "$result<BR>";
В основном stristr выполняется только в том случае, если ключ $ (игла) не является пустой строкой
Цитата пользователя php.net stristr: dpatton.at.confluence.org
В PHP 4.2.3 произошло изменение, которое может вызывать предупреждающее сообщение. быть сгенерированным при использовании stristr (), даже если сообщение не было генерируется в более старых версиях PHP.
Следующее будет генерировать предупреждающее сообщение в 4.0.6 и 4.2.3:
stristr("haystack", "");
ИЛИ
$needle = "";
stristr("haystack", $needle);
Это будет не сгенерировать предупреждающее сообщение «Пустой разделитель» в 4.0.6, но будет в 4.2.3:
unset($needle);
stristr("haystack", $needle);
Вот URL , который документирует то, что было изменено