![]() |
Модераторы: Aliance, skyboy, MoLeX, ksnk |
![]() ![]() ![]() |
|
Gold Dragon |
|
||||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
У меня есть файл с SQL-запросами
я его парсю следующем образом: - загружаю в массив файл - перебираю массив и удаляю всё лишнее. вернее продолжаю дальнейшую обработку если это "нормальная" строка - далее соединяю запросы и помещаю их в новый массив, деля по точке с запятой в конце.. И во тут то проблема на локалке я определяю что последний символ в значении массива точка с запятой Проверял регуляркой
и такой
Всё работает! Но на сервере отказывается работать.. не могу понять проблему... Кто с этим сталкивался? или как ещё можно проверить? -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
||||
|
|||||
patap |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 5 Всего: 40 |
попробуй с модификатором D
http://php.net/manual/ru/reference.pcre.pa...n.modifiers.php http://blog.php-security.org/archives/76-H...ch-filters.html -------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
|||
|
||||
Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
не получается... Да и почему на локалке и у хостинга различия?
как вариант
-------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
ksnk |
|
||||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 12 Всего: 386 |
с помощью file? В этом случае последние символы строк содержать символы перевода строк. так что проверка может быть быть какой-то такой (добавлен модификатор m)
можно сравнить версии pcre на локалке и сервере с помощью phpinfo. Искать по слову `pcre` в выводе. У меня на докалке
хотя это вряд ли... Еще бывают случаи, когда символ ; находится в строковом поле. Единственная надежда на то, что запрос создается не вручную, в этом случае символы перевода строк в строковом значении экранируются и не мешают регулярке. Можно распечатать неудачно распознанные строки с помощью json_encode. Непечатные символы в этом случае выводятся в виде шестнадцатеричных кодов, их видно. -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
||||
|
|||||
Gold Dragon |
|
||||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Да
так \s должен по любому все табуляции, пробелы и каретки учитывать.. в массив загоняю file, значит в конце то по любому каретка стоит.. И собственно почему rtrim() не работает то -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
||||
|
|||||
Gold Dragon |
|
||||||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
так... файл я загружаю этим
вот пример того, что выдаёт мне json_encode. Последняя именно нужная мне строка
PS какая то тупость... ничего не понимаю... На всякий случай вот мой код
-------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
||||||
|
|||||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 12 Всего: 386 |
preg_match_all нужно 3 параметра. Не в этом дело? -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
1. у меня не выполняется это условие
2. 3-й параметр не обязателен и возвращает массив с найденным Это сообщение отредактировал(а) Gold Dragon - 4.1.2013, 18:23 -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 12 Всего: 386 |
осталось только убедить в этом мой php 5.3.10 ![]() -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
да ладно!!! Вот бл.......
на локалке стоит 5.4.8, на серваке 5.3.... Сейчас проверю... -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 12 Всего: 386 |
Вообще-то влиять не должно. Там же варнинг, а не ошибка. Разве что какая-то самодельная обработка ошибок прикручена.
Можно убрать параметр FILE_IGNORE_NEW_LINES и попытать регулярку
Хотя это уже напоминает шаманство. ![]() -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
ksnk, дружище.. а ведь помогло!!! а просто херею... стоит обработка ошибок ALL. НИ на экране ни в логах ничего абсолютно.. Поставил тритий параметр и всё проскочило..
Да вот и я понимаю что не особо должно влиять.. особенно при том что первое условие проглатывает, а второе нет..!!! Сейчас ещё на одном серваке прогоню... ну и + конечно раздавать пойду ![]() -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Тексты | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |