Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.238.235.181] |
|
Сообщ.
#1
,
|
|
|
$res = preg_replace( '#^blabla\s*#u', '', 'blabla 0' ); Результат равен 'blabla 0', а должен быть '0'. Все в utf-8. Почему так? Как исправить? Добавлено Такой шаблон '#^blabla[ ]*#u' тоже глючит |
Сообщ.
#2
,
|
|
|
r u kidding?
Прикреплённый файл123123.jpg (107,51 Кбайт, скачиваний: 380) |
Сообщ.
#3
,
|
|
|
У меня так было. Как же это я так
if( $res = preg_replace( '#^blabla\s*#u', '', 'blabla 0' ) ) { $str = $res; ... } Еще у меня подобное есть с функцией preg_filter. В описании написано: Если совпадений не найдено или возникла ошибка, возвращается пустой массив array, когда subject имеет тип array, или NULL в противном случае. Пустой массив всегда === NULL? Такая конструкция будет корректно работать? if( ( $res = preg_filter( '#^blabla\s*#u', '', 'blabla 0' ) ) !== NULL ) |
Сообщ.
#4
,
|
|
|
В таком условии как у тебя в примерах условие никогда не будет выполняться, т.к. и "0" и "[]" кастуются к false.
|