Как вы и сами прекрасно понимаете, пользователь должен видеть только свои заказы, свои сообщения и так далее, и ни в коем случае не чужие. Но, конечно, иногда пропустив условие выборки данных, например, забыв указать WHERE в ParamConverter, мы нарушаем это правило. Я покажу вам как можно легко избавиться от подобного рода проблем не […]
Рубрика: Статьи чтобы набрать классы
Word2Vec в примерах
Волею судеб в мои руки попал обученный на поисковых запросах Word2Vec. Под катом даны примеры использования с пояснениями. Что есть Word2Vec? Word2Vec — это технология от гугл, которая заточена на статистическую обработку больших массивов текстовой информации. W2V собирает статистику по совместному появлению слов в фразах, после чего методами нейронных сетей решает […]
JSON конфиги в Golang
import «encoding/json» Создадим древовидный JSON файл.
Как управлять многостадийной средой развертывания с помощью системы Ansible
Ansible – это мощная система управления конфигурациями, которая используется для настройки и управления инфраструктурой и приложениями в различных средах разработки. Хотя система Ansible и предлагает пользователю простой в понимании синтаксис, гибкие рабочие процессы и мощные инструменты, зачастую бывает довольно затруднительно управлять большим количеством хостов, особенно когда они отличаются средой развертывания и […]
Как импортировать и экспортировать базы данных в MySQL или MariaDB
Умение импортировать и экспортировать свои базы данных – это очень важный навык для каждого. Вы всегда сможете использовать дампы данных с целью резервного копирования или восстановления более старых копий базы данных в случае непредвиденных ситуаций либо сможете использовать их функционал для перехода на новый сервер или среду разработки. Работа с […]
PHP 7.1 — 9 новых функций, о которых вам стоит знать
Наконец, в свет вышла PHP 7.1, новая минорная версия PHP, которая включает в себя ряд новых функций, изменений и исправления ошибок. В настоящей статье мы рассмотрим некоторые новые замечательные функции PHP 7.1, а именно: Итерируемый псевдотип Замыкания через функции обратного вызова Синтаксис с квадратными скобками для списка () Поддержка ключей […]
Как создать собственный контейнер внедрения зависимостей на PHP
На запрос «контейнер внедрения зависимостей» packagist.org выдает более 95 страниц результатов. Так что можно с уверенностью утверждать, что это «колесо» уже изобретено. Но ни один шеф-повар не учится готовить только по готовым блюдам. Точно так же, программист не учится только по «готовому коду».
Имитирующие методы и переопределение конструкторов
В предыдущем уроке по PHPUnit вы познакомились с такими эффективными инструментами, как имитирующие объекты и методы-заглушки. Эти понятия являются залогом успешного модульного тестирования, и как только они «улягутся» у вас в голове, вы начнете понимать, насколько полезным и простым может быть тестирование. Хочу пояснить еще одну вещь: по сути, создание […]
Имитирующие объекты, методы-заглушки и внедрение зависимости
В предыдущих статьях я показал вам, как писать базовые тесты для базовых методов. Теперь вы можете пользоваться аннотацией @dataProvider, создавать отчеты о покрытии, и знаете, как пользоваться отдельными утверждениями. До этого мы писали тесты для простых методов. Вызов внутреннего метода в рамках одного и того же класса, вставка блока if, но […]
События жизненного цикла в Doctrine 2
Общим требованием при создании приложений является понимание того, что в результате какого-либо события в системе активируются определенные действия. Это могло бы быть так же просто, как обновление поля updated_at каждый раз при изменении записи в базе данных, или отправка электронного письма каждый раз, когда в вашем приложении регистрируется новый пользователь. Doctrine 2 […]