Часто перед разработчиками PHP встаёт задача проверить работу веб-приложения под несколько версий интерпретатора. Решить её можно разными способами. Можно банально установить разные версии PHP на один хост, но это чревато конфликтами библиотек и другими сложностями. Вторая крайность — сделать несколько изолированных виртуальных машин с разным окружением, но здесь не обойтись без чрезмерного использования аппаратных ресурсов и излишней траты времени на разворачивание рабочего окружения. На настоящий момент наиболее просто решить данную задачу можно с помощью Docker.
Рубрика «php» - 51
Несколько версий PHP на хосте с помощью Docker
2019-01-14 в 11:49, admin, рубрики: docker, nginx, php, виртуализация, системное администрированиеPHP-Дайджест № 147 (1 – 14 января 2019)
2019-01-13 в 21:29, admin, рубрики: Async PHP, drupal, laravel, php, PHP 7.4, php-дайджест, phpstorm, symfony, wordpress, yii, дайджест, Разработка веб-сайтов
Свежая подборка со ссылками на новости и материалы. В выпуске: обновления всех веток PHP, Deployer 6.4, doctrine/migrations 2.0, Psalm 3 и другие релизы, Никита Попов в JetBrains, новости PHP Internals, порция полезных инструментов, видео, и многое другое.
Приятного чтения!
Используем аннотации в PHP по максимуму
2019-01-08 в 15:14, admin, рубрики: Doctrine ORM, php, php-di, sunrise, ПрограммированиеБудучи back-end разработчиком, я всеми фибрами своей души люблю микросервисные архитектуры, но еще больше, люблю разрабатывать микросервисы. При разработке, чего бы то ни было, я придерживаюсь одного простого принципа – минимализм. Под минимализмом я подразумеваю простую истину: код должен быть максимально «прозрачным», его должно быть минимум (идеальный код – код которого нет), а посему, я делаю ставку в пользу аннотаций.
Немного о лексическом анализе
2019-01-03 в 22:38, admin, рубрики: lexer, php, regex, Компиляторы, никто не читает теги
Давным-давно, когда небо было голубым, трава зеленее и по Земле бродили динозавры… Нет, забудьте про динозавров. Ну, в общем, когда-то тогда пришла в голову мысль отвлечься от стандартного web-программирования и заняться чем-то более безумным. Можно было, конечно, чем угодно, но выбор пал на написание своего интерпретатора. Что я могу сказать… Никогда не пишите свои языки программирования. Но некоторый опыт из всего этого я извлёк, так что вот и решил поделиться. Начнём с самой основы — лексера.
Читать полностью »
Кое-что о пространстве имён
2019-01-02 в 19:22, admin, рубрики: javascript, namespaces, php, Программирование, сложные системы, языки программированияЯ программирую на PHP. И немножко на JS. Когда-то я программировал на Java, ещё раньше — на LotusScript. Попробовал на вкус python и dart. Basic, Fortran, Pascal, Prolog, VisualBasic, С++/С, perl — на всём этом я тоже изображал что-то исполняемое. Языки программирования меня интересуют с точки зрения создания компьютерных приложений. Web-приложений. Сложных web-приложений. Таких, которые пишут незнакомые друг с другом люди. Точнее, лично незнакомые — они знают друг друга по подписям в коммитах в общий репозиторий и по nickname’ам в баг-трекерах. Я не слишком умён, чтобы программировать на С/С++ для различных ОС, и поэтому я программирую на PHP для Magento.
Так, вот, возвращаясь к теме статьи, могу сказать, что пространство имён — один из очень важных столпов, на которых базируется написание сложных web-приложений группой слабознакомых друг с другом разработчиков.
Разработка аналога FindFace одним школьником
2018-12-31 в 10:37, admin, рубрики: android, find face, find person, FindFace, findperson, Google Play, indie, java, php, Вконтакте, машинное обучение, нейронные сети, ненормальное программирование, Программирование, Разработка под android
История от первого лица
Как сделать аналог FindFace в одиночку и не сойти с ума
И почему так делать не надо
Читать полностью »
Как я делал «Твой Дневник» — или ситуация на рынке электронных дневников
2018-12-30 в 9:09, admin, рубрики: iOS, php, swift, медийная реклама, образование, приложение, Программирование, разработка под iOS, твой дневникВсем привет, пишу свой первый пост. Согласно правилам, его нельзя делать рекламным, поэтому постараюсь вам рассказать чего-нибудь интересного, без ссылок и прочего.
Я достаточно давно интересуюсь моментами, связанными с образованием в нашей стране. В том числе моментами его цифровизации, приведения к какому-то интерактивному, удобному, доступному знаменателю.
Одним из сервисов нашего образования, который даёт универсальный доступ к школьным ресурсам, является электронный дневник.
Я долго смотрел вокруг и мучил себя мыслями о том, что российские школьники не получают доступ к качественному и красивому сервису для просмотра оценок.
Читать полностью »
PHP парсинг от А до Я. Грабли и возможные решения
2018-12-28 в 17:20, admin, рубрики: php, php-парсинг, парсинг, парсинг мобильных приложений, парсинг сайта, Разработка веб-сайтов, Тестирование веб-сервисов
Поскольку на Хабре после лавины публикаций «N в 30 строк» в 2013-м г. почти не публикуются материалы по программированию, то скажу, что этот материал для домохозяек, желающих научиться программированию, тестировщиков и просто неравнодушных людей.
В современном мире микросервисов господствует API. Но сервисов с каждым днем все больше, а API предоставляют далеко не все. Между тем данные сервисов могут быть весьма важны для анализа, бизнеса, копирования и т.д.
Посмотрим, как можно распарсить один известный сайт объявлений о продаже/аредне недвижимости максимально эффективно (и быстро), научимся обходить качпу и парсить мобильные приложения.
Внимание. Данный материал не является призывом к действию, носит информационный характер с целью повышения квалификации и увеличения качества работы тестировщиков.
Читать полностью »
Почему валидации email регуляркой недостаточно. Проверка MX-записей с примерами на PHP и Ruby
2018-12-28 в 0:12, admin, рубрики: cms, email-рассылки, mx record, php, ruby, ruby on rails, управление проектамиУж сколько раз твердили Миру… Существует давний и, вероятно, нескончаемый спор о том, какой именно регуляркой правильно и нужно проверять поле email пользователя.
Да, проверять регуляркой действительно нужно. Но ведь наши продукты работают в Сети. Так почему бы не использовать её настоящую мощь?
Читать полностью »
RoadRunner: PHP не создан, чтобы умирать, или Golang спешит на помощь
2018-12-25 в 10:22, admin, рубрики: Go, golang, php, php-fpm, roadrunner, Блог компании Badoo, высокая производительность, Программирование
Привет! Мы в Badoo активно работаем над производительностью PHP, поскольку у нас достаточно большая система на этом языке и вопрос производительности — это вопрос экономии денег. Более десяти лет назад мы создали для этого PHP-FPM, который сначала представлял собой набор патчей для PHP, а позже вошёл в официальную поставку.
За последние годы PHP сильно продвинулся вперёд: улучшился сборщик мусора, повысился уровень стабильности — сегодня на PHP можно без особых проблем писать демоны и долгоживущие скрипты. Это позволило Spiral Scout пойти дальше: RoadRunner, в отличие от PHP-FPM, не очищает память между запросами, что даёт дополнительный выигрыш в производительности (хотя этот подход и усложняет процесс разработки). Мы сейчас экспериментируем с этим инструментом, но у нас пока нет результатов, которыми можно было бы поделиться. Чтобы ждать их было веселее, публикуем перевод анонса RoadRunner от Spiral Scout.
Подход из статьи нам близок: при решении своих задач мы тоже чаще всего используем связку PHP и Go, получая преимущества от обоих языков и не отказываясь от одного в пользу другого.
Enjoy!
Читать полностью »

