Качество кода не только в том, как он работает, но и в том как выглядит. То, что единый в рамках кампании code style — это очень важная вещь — в наши дни убеждать уже никого не нужно. Код должен быть не только написан, но и оформлен. В плане оформления PHP кода, утилита php-cs-fixer давно уже стала стандартом. Использовать ее довольно просто, есть куча правил и можно удобно забиндить ее запуск на какую-нибудь комбинацию клавиш в шторме или на pre-commit hook в гите. Все это легко гуглится и подробно разбирается в сотнях статей. А мы сегодня поговорим о другом. Хотя в php-cs-fixer есть большое количество разных фиксеров, но что, если нам понадобится такой, которого там нет? Как написать собственный фиксер?
Читать полностью »
Рубрика «php» - 89
php-cs-fixer: Пишем свой фиксер
2017-04-10 в 7:35, admin, рубрики: Code Style, php, php-cs-fixer, symfonyPHP-Дайджест № 106 – свежие новости, материалы и инструменты (26 марта – 9 апреля 2017)
2017-04-09 в 20:09, admin, рубрики: laravel, php, PHP 7, php-дайджест, symfony, yii, Zend Expressive, Zend Framework, Блог компании Zfort Group, Веб-разработка, дайджест, Новости, подборка, Разработка веб-сайтов, ссылкиПредлагаем вашему вниманию очередную подборку со ссылками на новости и материалы.
Приятного чтения!
Читать полностью »
Статистические компоненты: основы и практика
2017-04-09 в 12:55, admin, рубрики: pandas, php, spark, yii, анализ данных, машинное обучение, Разработка веб-сайтов, статистика1. Вступление
В широком спектре приложений можно встретить весьма различный функционал обработки статистики, которая необходима как для отчётов, так и для автоматизации работы самого приложения (рейтинги, рекомендации, результаты поиска). Заметка содержит краткое описание некоторых основных методов анализа информации, а также примеры исходного кода, предназначенного для обработки статистики, сбора и подготовки данных.
Статистический компонент — это часть приложения или отдельный сервис, который выполняет обработку информации, включая удобное для пользователя отображение отчёта. В некоторых архитектурах его создают в качестве отдельного сервиса, взаимодействующего посредством API или очередей (RabbitMQ, Redis). Генерация графиков и диаграмм может происходить непосредственно в браузере (Chart.js, D3.js и подобные решения) на основании полученных в JSON данных, а может выполняться заранее (в формате PNG), т.е. в момент обработки данных. Таким образом, с технической точки зрения сервис (модуль, компонент) может быть внешним проектом, реализованным на другом языке программирования.
Интеграция ИС с ЕСИА посредством SAML
2017-04-09 в 10:00, admin, рубрики: denjoy, php, saml, SimpleSaml, госзаказ, госуслуги, есиа, интеграция с есиа, информационная безопасность, Разработка веб-сайтов, метки: SimpleSaml
При выполнении очередного госзаказа наша команда столкнулась с проблемой интеграции сайта с ЕСИА. Инструкции по решению этой задачи в сети нет, кроме информации в официальных документах МинКомСвязи (примерно 300 страниц в трех регламентах). Также есть компании, которые оказывают платные услуги по интеграции ЕСИА. Мы реализовали, описали процесс интеграции и решили поделиться с сообществом habrahabr.
Митап ThinkPHP #14 в Харькове. Вместе 5 лет
2017-04-07 в 7:47, admin, рубрики: php, thinkphp, Блог компании NIX Solutions, митап, Программирование, Разработка веб-сайтовОтмечаем 5-летний юбилей ThinkPHP вместе на четырнадцатой встрече нашего комьюнити! Пять лет интересных встреч, насыщенных докладов, оживленных кофе-брейков и уютных пятничных вечеров — и ThinkPHP #14 продолжает эту традицию. Вас ждут крутые спикеры, актуальные темы мира PHP, вкусные кофе-брейки и многое другое.
Сети Петри с Symfony а-ля WorkFlow компонент
2017-04-06 в 16:21, admin, рубрики: php, symfony, workflowДавайте представим некоторый проект на GitHub, куда мы хотим оформить Pull Request. Здесь нас будет интересовать только тот огромный жизненный цикл нашего пулл реквеста, который он фактически может пройти с момента рождения до самого момента его принятия и мержа в основной код проекта.

Итак, если порассуждаем, то пулл реквест может иметь следующие варицации над состояниями, которые я специально усложнил, если не знать о WorkFlow и смотреть на подобное тз:
1. Открыт
2. Находится в проверке в Travis CI, причем может попасть туда после того как были сделаны какие-то исправления или любые изменения, связанные с нашим Pull Request, ведь проверить-то надо все, не так ли?
3. Ждет Review только после того как была сделана проверка в Travis CI
3.1. Требует обновлений кода после того как была сделана проверка в Travis CI
4. Требует изменения после Review
5. Принят после Review
6. Смержен после Review
7. Отклонен после Review
8. Закрыт после того, как был отклонен после Review
9. Открыт заново после того как был закрыт, после того как был отклонен, после того как было проведено Review
10. Изменения после того как был помечен «Требует изменений», после того как было проведено Review, при этом после этого он снова должен попасть в Travis CI (пункт 2), а от Review снова может с ним случиться только те состояния, которые мы описали выше
Читать полностью »
Symfony Flex, как будет выглядеть ваше приложение с Symfony 4
2017-04-04 в 13:19, admin, рубрики: php, symfony, symfony4Symfony 4.0 выйдет в релиз в конце ноября 2017 года. Следующие несколько недель будут опубликовываться статьи о новых идеях и основных изменениях в Symfony 4.
Symfony 3.0 был скучным и являлся более лаконичной версией Symfony 2.8:
Symfony 3.0 = Symfony 2.8 — Deprecated Features.
Но что же будет представлять из себя Symfony 4.0 в отличии предыдущих версий:
Symfony 4.0 = Symfony 3.4 — Deprecated Features + Новые концепции разработки приложений.
Или вот еще один вариант развития событий:
Symfony 4.0 = Symfony 3.0 + All features added in 3.x — Deprecated Features + Новые концепции разработки приложений.
Читать полностью »
Всепротокольный бот на PHP за 10 минут, или как Microsoft Bot Framework и Azure Functions облегчают нам жизнь
2017-04-03 в 12:11, admin, рубрики: api, azure, azure functions, bot, Microsoft Azure, Microsoft Bot Framework, php, skype, slack, telegram, web, web-разработка, боты, облака, облачные сервисы, Разработка веб-сайтов, Системы обмена сообщениямиАбсолютно невозможно отрицать, что развитие естественных паттернов в интерфейсах дало фантастический толчок к развитию всей ИТ-индустрии в целом. И речь не только и не столько о голосовых интерфейсах, сколько о повсеместном внедрении жестов, гигантском сдвиге в парадигме мобильных платформ и, конечно, существенных работах в области UI и UX в целом. В то время как индустрия стремится стать все более дружелюбной для все более широких масс людей, обычная и, в определенной степени, рутинная разработка превращается в бесконечные попытки объять необъятное. Если раньше нас в основном заботили уровни абстракции языков и фреймворков, то сейчас перед нами стоят куда более глобальные вопросы. Как найти баланс между сложным и функциональным интерфейсом? Стоит ли начинать новый проект с микросервисов? На эти вопросы я не могу ответить, зато я могу рассказать вам об инструментах, которые уже сейчас существенно облегчают и удешевляют освоение и применение новых технологий и подходов к разработке.Читать полностью »
Регистрация и авторизация пользователя на сайте — одним кликом — через кастомную кнопку Facebook. 2017
2017-04-03 в 9:47, admin, рубрики: 2017, codeigniter, CodeIgniter 3, Facebook API, Facebook OAuth 2, facebook sdk, fb2, jquery, php, апрель 2017Итак, начал я разрабатывать один проект по фану. Основная идея проекта проста: площадка, где все могут ставить на всё что угодно, заключать пари, сделки и БЕЗ каких либо ограничений. Развлекательный проект по сути своей.
Ну и конечно стал вопрос Удобной авторизации пользователей с наименьшим «трением». Подумав немного, я выбрал авторизацию через Facebook, но думаю, на этом я не остановлюсь и вы прочтете ещё несколько статей, с авторизацией через Google Acc, VK и Tweet.

Итак к делу! В интернете я нашел несколько тем, которые описывают вопрос авторизации, некоторая информация мне помогла, но я не нашел ни одной, которая бы решила поставленную мной задачу, поэтому, завершив задачу я и решил написать эту статью.
Читать полностью »



