- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Делаю простой кэш для своего велосипеда
проблема в том, что сгенерированная страница (через getData()) может содержать warning-и (вывод ошибок на продакшне я конечно отключу, но мало ли..)
Как проверить, содержит ли $data ошибки? чтобы не кешировать её в этом случае
---------- Добавлено 10.08.2016 в 11:16 ----------
самое топорное -- искать <b>Warning</b> в $data но это тот ещё костыль, как по мне.
Оборачивать в try..catch -- но тогда сборка страницы прервётся при первом же notice..
мне кажется исключения лучший выбор. просто прерывать по exit
мне кажется исключения лучший выбор
так мне не нужно чтобы прерывалось: пусть он выведет страницу с notic'ами и warning'ами, но не кеширует её в таком виде
так мне не нужно чтобы прерывалось: пусть он выведет страницу с notic'ами и warning'ами, но не кеширует её в таком виде
Я вообще не понимаю что вы кэшируете и как ваши warning попадут в кэш.
сделайте функцию, которая будет возвращать html для вывода окончательный, результат функции и ложите в кэш
может так как-то проверять?
http://php.net/manual/ru/function.error-get-last.php
ТС, понимаете, программирование это не там, где есть волшебство. Тут ТУПО нужно сделать, то что вы хотите. Магии нет, волшебных слов тоже.
Я вообще не понимаю что вы кэшируете и как ваши warning попадут в кэш.
сделайте функцию, которая будет возвращать html для вывода окончательный, результат функции и ложите в кэш
Это всё хорошо, если изначально об кеше задумывалось, а тут очень похоже на то, что прикручивают к уже готовому проекту. Поэтому (отвечая на вопрос "как?") - через output buffering, даже код для наглядности приведен.
Собственно поэтому на всякие варнинги человек и напоролся.
Это всё хорошо, если изначально об кеше задумывалось, а тут очень похоже на то, что прикручивают к уже готовому проекту. Поэтому (отвечая на вопрос "как?") - через output buffering, даже код для наглядности приведен.
Собственно поэтому на всякие варнинги человек и напоролся.
Что нужно сделать чтобы в буфер попали варнинги которые по умолчанию отправляются в stderr? Я столько лет программирую и никогда не встречал такой кейс. Сейчас попробую потестить ради интереса :)
----
Действительно, есть такой кейс, как то я прошел мимо такого бага :)
Ну как бы в браузере вы хоть раз варнинги видели? А тут по сути идёт захват всего, что выдаётся в браузер. Вот и варнинги захватываются.
Тогда как то так
error_get_last
круто, похоже, то что нужно. спасибо!