Дошли руки доработать компонент NotFoundParamAlert, позволяющей отлавливать несуществующие страницы с заданными GET параметрами. Лично я его использую для раннего выявления ошибочно настроенных объявлений в контекстной рекламе, отлавливая такие объявления по UTM меткам. Однако никто не мешает отлавливать все ошибочные страницы с GET параметрами задав в качестве правила просто *.
В очередной раз замучавшись объяснять на одном из проектов, что в момент создания документа необходимо проверять назначаемый шаблон вновь создаваемому документу, решил написать костыль. Сначала коснемся сути проблемы, а потом разберем получившееся дополнение.
В очередной раз на крупном клиентском проекте, где настроены все виды контекста, обнаружил, что опять была изменена структура сайта и часть объявлений стала вести на несуществующие страницы. И если Google Adwords об этом хотя бы честно предупреждает, хоть и не сразу, то Яндекс Директ молчит как партизан. В общем решил, что надо разобраться с этим вопросом.
Праздники это прекрасное время позаниматься какой-нибудь фигней, например, наконец-то реализовать идею автоматической очистки кода PHP файлов при выкладке в продакшн. Очистку будем осуществлять средствами Gulp, так как эту библиотеку все равно регулярно использую для мелкой автоматизации. Но начнем с самого начала.
В предновогодней суете хотелось бы в очередной раз коснуться вопроса разработки с PHPUnit. На этот раз речь пойдет об использовании наборов данных (на языке PHPUnit они называются дата провайдеры) для автоматических тестов. Почему захотелось написать именно про наборы, потому что это не часто используемая техника позволяет существенно сократить код тестов и сделать их более наглядными.
Не так давно столкнулся с простой проблемой, моя любимая система IDE Eclipse с включенным xDebug, отказалась работать ссылаясь на то, что порт 9000 уже кем-то занят. Я решил быстро узнать, кто же его уже занял, и казалось бы, что проще может быть проще, чем посмотреть netstat и перенаправить его в grep. Но нет, мы же на Windows компьютере.
Долго доходил до TDD (Test-Driven Development) и таки добрался. Начав применять его в разработке решил немного написать про него, взяв за основу модульную разработку на PHP с использованием фреймворка PHPUnit при разработке. Давайте углубимся в него на примере простого приложения.
Недавно начал переносить свои проекты с sweb.ru, хостинга, которым пользовался много лет, но который начал портиться в последнее время. Большинство проектов переношу на reg.ru, который мне больше нравится, как по ограничениям в нагрузке, так и по техническим ограничениям, накладываемым на сервер и php.