PHP.today

@phptoday Like 1

Самые свежие новости из мира PHP. Обновленные стандарты. Лучшие практики с примерами кода. Как писать чистый, читаемый и понятный код.
Channel's geo & Language
Russian, Russian


Contact author
Channel's geo
Russian
Channel language
Russian
Category
Technologies
Added to index
30.10.2017 10:05
advertising
Ready to pitch your idea?
Daily best idea prices. Live experts. Startup trends
SearcheeBot
Your guide in the world of telegram channels
TGStat Bot
Bot to get channel statistics without leaving Telegram
3 732
members
~0
avg post reach
~71
daily reach
N/A
posts per day
N/A
ERR %
6.64
citation index
Forwards & channel mentions
23 mentions of channel
0 post mentions
1 forwards
Говнокод
5 Mar, 18:05
Пых
26 Feb, 16:09
IT Channels
20 Dec 2020, 18:00
PHP Books
25 Dec 2019, 10:00
freehostua
24 Dec 2019, 12:47
dr.Brain
22 Oct 2019, 17:00
IT Юмор
20 Sep 2019, 13:30
WebDev
16 Sep 2019, 09:00
TechRocks
17 Jan 2018, 14:31
Crosser Live
1 Jan 2018, 22:43
13 Dec 2017, 15:10
3 Nov 2017, 18:14
Channels quoted by @phptoday
Beer::PHP 🍺
27 Apr, 12:00
SecAtor
29 Mar, 21:57
PHP Digest
5 Feb, 21:13
PHP Digest
5 Feb, 21:13
SimbirSoft.Dev
12 Nov 2020, 15:00
Пых
4 Jun 2020, 11:00
IT Finland Nerdsbay
17 Feb 2020, 09:00
PHP Books
23 Dec 2019, 10:00
dr.Brain
24 Oct 2019, 17:00
WebDev
16 Sep 2019, 09:00
Dev Tools
20 Mar 2019, 15:00
Daily Coding 🔥
21 Feb 2018, 17:30
Kompot Journal
11 Feb 2018, 21:24
3 Nov 2017, 18:09
Recent posts
Deleted
With mentions
Forwards
PHP.today 8 Sep, 19:16
Какими докер-тулами вы пользуетесь? Список сильно короткий, поэтому если пользуетесь еще чем-то - смело пишите в комментарии!
Опрос
  • Traefik
  • Portainer
  • MailHog
  • Другое (написать в комменты)
278 голосов
PHP.today 8 Sep, 17:30
Всем привет! Прошу прощения за долгое молчание, жизнь приперла к стенке, и пришлось отбиваться =) Пришлось переезжать, и все лето ушло на переезд и обустройство на новом месте.


Сегодняшний пост будет скорее для маководов, хотя и для линуксоидов тула подойдет, но, местами - не автоматически.
Речь про warden.dev. Warden - это консольная утилита для управления контейнерами, идельно подходит для Magento, а также для  Symfony, Laravel, Showare, Commonalities.

На маке работает довольно шустро, умеет:
- Включать-выключать xdebug по наличию куки из расширения Xdebug Helper автоматически
- Поднимать новые хосты всего в несколько команд
- Https из коробки без самостоятельных настроек
- Portainer, Traefik, MailHog уже включены.
- Удобное управление версиями через .env файл - поменял php с 7.2 на 8.0, или elasticsearch с 6 на 7.4, перезагрузил, готово.
- Автоматически прописывает хосты на macos, не нужно топать в /etc/hosts

Ну и если понадобится что-то уж совсем кастомное - всегда можно поправить любые конфиги, добавить инструкции в docker-compose или поменять docker-образ

Ссылочка:
https://warden.dev/

#docker #warden #docker-compose
Read more
PHP.today 5 May, 12:18
Возможно, вы уже знаете об этом, но я все равно напишу:

Проверять свои composer зависимости на предмет известных уязвимостей можно просто добавив в dev зависимости пакет:

composer require --dev roave/security-advisories:dev-latest


Это простой metapackage, в котором в директиве conflict описаны известные версии библиотек с уязвимостями. Т.е. при попытке установить пакет с уязвимостью вы получите ошибку на уровне composer require.

Ссылка на github: https://github.com/Roave/SecurityAdvisories
Read more
PHP.today 29 Apr, 14:20
🧑‍💻Что дает знание профессионального английского?
- Повышение дохода минимум на 20%.
- Работа на международных проектах.
- Возможность релокейта.

Английский для IT от MBA Strategy:
- Программа обучения подстраивается под ваш уровень и цели обучения.
- Коммуникативная методика позволит с первых занятий побороть языковой барьер.
- На занятиях вы разберете актуальные тематические материалы, терминологию и профессиональный сленг IT-сферы.
- Онлайн формат позволяет заниматься из любой точки мира.

✅Узнать подробнее о курсе и записаться на бесплатное пробное занятие:
mbastrategy.ru
Read more
PHP.today 27 Apr, 12:00
PHP.today 25 Apr, 22:25
Не мокайте то, чем вы не владеете! Моканье классов третьесторонних библиотек - довольно скользкая дорожка.

Перевел статейку авторов PHPUnit. Перевод на хабре https://habr.com/ru/post/554318/, оригинал тут https://thephp.cc/news/2021/04/do-not-mock-what-you-do-not-own

#тестирование #phpunit #unittest

P.S. На самом деле в статье взят самый простой пример, и оборачивание всех сервисов фреймворка в отдельный слой своих классов - на мой взгляд - оверхед. Но в некоторых местах это действительно нужно сделать так (ну или похоже), как описано в статье
Read more
PHP.today 21 Apr, 15:10
​​2 доклада по Symfony на митапе PHP NN сообщества

Трансляция стартует 24 апреля в 11:00 (Мск)

🎤 Как переделать Symfony-проект в целое направление (Денис Юрьев, Skysmart от Skyeng)

🎤 Как структурировать код, чтобы не получить большой ком грязи (Валентин Удальцов, ведущий каналов Пых и PHP Point)

Будет возможность включиться голосом в митап с вопросами 🐘
Read more
PHP.today 20 Apr, 15:10
​​С выходом 8 версии PHP теперь не только удобнее, но и еще более востребованным. У вас уже есть некоторый опыт в PHP? Тогда самое время прокачать свои навыки в OTUS! На онлайн-курсе «PHP Developer. Professional» вы за 5 месяцев научитесь разрабатывать надежный бэкенд и сможете претендовать на middle/ senior позиции.
Каждый поток программа актуализируется с учетом обновлений и трендов. Занятия ведут сильнейшие эксперты-практики.
После обучения вы сможете:
- Писать понятный чистый код и работать в команде
- Ориентироваться в экосистеме PHP
- Анализировать код и повышать стабильность приложений

Занятия начинаются 26 апреля. Успейте пройти вступительный тест и занять место с дополнительной скидкой https://otus.pw/zMdw/
Read more
PHP.today 16 Apr, 18:20
В PHP 8.1 скорее всего появятся файберы.

Вот вам статейка на русском о том, что это такое, и как можно будет использовать
https://telegra.ph/Fibery--novaya-ficha-v-PHP-81-04-16

Ну а за самим RFC можно следить тут https://wiki.php.net/rfc/fibers

И милости просим в комменты, если есть уже идеи, как будете использовать их в своих проектах

#fibers #асинхронность #корутины
Fiber’ы — новая фича в PHP 8.1
PHP пытается восполнить недостаток возможностей в своей кодовой базе, и Fiber’ы — одно из значимых нововведений. Они появились в PHP 8.1 в конце 2020 и привнесли в язык своего рода асинхронное программирование. Файберы представляют собой легковесные потоки исполнения (известные как сопрограммы, или корутины (coroutine)). Они исполняются параллельно, но обрабатываются исключительно самой runtime-средой, а передаются напрямую в процессор. Разные реализации сопрограмм есть во многих основных языках, но принцип…
PHP.today 29 Mar, 21:57
Forwarded from: SecAtor
Вчера злодеи скомпрометировали внутренний репозиторий PHP и добавили бэкдор в исходный код.

Первым бэкдор обнаружил чешский программист Майкл Воржишек, который обратил внимание на подозрительный кусок кода и задался вопросом, что тот должен делать. Оказалось, что выполнять код через вызов функции zend-eval-string, содержащийся с подстрокой zerodium (это такая американская компания, покупающая 0-day, видимо хакеры пошутили), передаваемой в HTTP-заголовках.

Сегодня один из основных членов команды PHP Никита Попов подтвердил, что вчера был добавлен вредоносный код от его имени и от имени другого члена команды Расмуса Лердорфа. Он сообщает, что его учетная запись не была скомпрометирована, а взломан был именно сервер репозитория, в связи с чем они переедут на GitHub.

Атака на цепочку поставок.
Read more
PHP.today 21 Mar, 13:30
PHP.today 17 Mar, 17:00
​​Какое ключевое качество отличает успешного PHP-разработчика? — Любознательность.
Чтобы решать задачи на Middle+ уровне, необходимо уметь работать с экосистемой PHP.
Начните получать необходимые навыки 13 апреля на демо-занятии «Экосистема PHP». Вместе с Александром Пряхиным, СТО в CityAds Media, вы разберете:
- Какие темы и когда нужно изучать?
- Почему надо задавать вопросы и исследовать все вокруг?

Демо-урок является частью онлайн-курса «PHP Developer. Professional». Используйте эту возможность попробовать курс, познакомиться с преподавателем и получить ценные знания. Для регистрации на занятие пройдите вступительный тест https://otus.pw/jQOZ/
Read more
PHP.today 16 Mar, 16:46
Все мы умеем настраивать веб сервер. Как минимум это нужно даже на локалке, чтобы развернуть проект.

Но зачастую такая настройка вида "лишь бы работало". И если для локалхоста этого вполне достаточно, то на сервер такую конфигурацию выгружать не стоит, не покурив внимательно мануалы.

В частности - вот какие уязвимости можно допустить просто по незнанию в конфигах nginx

#уязвимость #nginx #вебсервер

https://telegra.ph/CHastye-oshibki-v-nastrojkah-Nginx-iz-za-kotoryh-veb-server-stanovitsya-uyazvimym-03-16
Частые ошибки в настройках Nginx, из-за которых веб-сервер становится уязвимым
Nginx — это веб-сервер, на котором работает треть всех сайтов в мире. Но если забыть или проигнорировать некоторые ошибки в настройках, можно стать отличной мишенью для злоумышленников. Detectify Crowdsource подготовил список наиболее часто встречающихся ошибок, делающих сайт уязвимым для атак. Nginx — один из наиболее часто используемых веб-серверов в Интернете, поскольку он модульный, отзывчивый под нагрузкой и может масштабироваться на минимальном железе. Компания Detectify регулярно сканирует Nginx на предмет…
Read more
PHP.today 11 Mar, 17:00
​​Как расширить свои возможности применения Java?

Начните уже 24 марта в 20:00 мск осваивать профессиональные навыки на демо-занятии «gRPC для микросервисов или не REST-ом единым».

Вместе с преподавателем Сергеем Петрелевичем вы разберете, что такое gRPC и как его можно использовать вместо REST-а для коммуникаций между микросервисами. Используйте эту возможность, чтобы перенять опыт эксперта и попробовать онлайн-курс «Java Developer. Professional».

📍Пройдите вступительный тест, чтобы участвовать в демо-занятии: https://otus.pw/p0Hy/
Read more
PHP.today 4 Mar, 20:48
А вы умеете писать sql запросы?
Опрос
  • Любой сложности
  • Ну прочитать, вставить, удалить строку
  • Зачем? ORM за меня все делает
1240 голосов
PHP.today 4 Mar, 20:47
В последнее время, собеседуя backend-разработчиков заметил нехорошую тенденцию. Люди не очень в SQL. Когда-то давно, когда я начинал, еще не были так распространены ORM, да и большинство кода даже не использовало ООП. И не было другого выхода, кроме как писать "сырые" запросы. (Да и сырыми их тогда никто не называл).

Сейчас общество как будто развращено симфонями и ларавелями, и, особенно, по начинающим разработчикам это заметно.

И сейчас хочу поделиться с вами статейкой о том, как узнать, почему написанный вами (или ORMкой) запрос педалит работает медленно.

#mysql #explain #профилирование

https://habr.com/ru/company/citymobil/blog/545004/
Read more
PHP.today 20 Feb, 12:59
Что ждет PHP в 2021?
Узнаем 27 февраля на большом стриме.

🎤 2 доклада: о WebRTC от Ильи Левина из Skyeng, о gRPC — от Антона Жукова из ManyChat.

🏄 Острые дискуссии, мнения о 2020, планы на 2021. В эфир придут:

- Никита Попов (PHP core team)
- Дмитрий Елисеев (ElisDN)
- Валентин Удальцов (Пых)
- Роман Пронский (PHP-дайджест)
- Александр Макаров (Yii)
- Сергей Жук (Между Скобок)
- Константин Буркалев (SDCast)
- Петр Мязин (Пятиминутка PHP)
- Антон Околелов (Цинковый прод)
- Николай Пучко (PHPToday)

🎁 Покажем итоги опроса про лучшее из мира PHP за 2020, разыграем фирменного слоника и целый пул других подарков.

Трансляции в 11:00 (Москва/Минск), 10:00 — Киев
Read more
PHP.today 20 Feb, 12:55
PHP.today 18 Feb, 12:08
Недавно появилась парочка интересных переводов о зловредах в php.

Первый настоятельно рекомендую к прочтению, как минимум для общего развития. Сама по себе идея проста до гениальности - мы берем пару невидимых символов (например - пробел и табуляция), и считаем, что они "1" и "0". Кодируем наш скрипт в бинарный формат, заменяем единицы и нули нашими невидимыми символами, и - вуаля!

#backdoor #уязвимость

Подробности тут https://telegra.ph/Nevidimye-simvoly-skryvayushchie-veb-shell-v-zlovrednom-kode-na-PHP-02-18

Второй - не особенно-то и актуальный для PHP - взлом через менеджер зависимостей (composer для PHP) путем подмены приватного пакета на публичный.
https://telegra.ph/Zashchita-ot-uyazvimosti-Dependency-Confusion-v-PHP-s-pomoshchyu-Composer-02-18
Невидимые символы, скрывающие веб-шелл в зловредном коде на PHP
В ноябре мы писали о том, как злоумышленники используют инъекции JavaScript для загрузки зловредного кода из файлов CSS. Поначалу незаметно, что эти инъекции содержат что-то, кроме безобидных правил CSS. Однако при более тщательном анализе файла .CSS обнаруживается 56 964 кажущиеся пустыми строки, содержащие сочетания из невидимых символов табуляции (0x09), пробелов (0x20) и переводов строки (0x0A), которые преобразуются в двоичное представление символов, а затем в текст исполняемого кода на JavaScript. Вскоре…
Read more
PHP.today 11 Feb, 23:51
Чем себя занять в моменты, когда на работе нужно написать много рутинного кода, ну или задачи по-просту не интересные? Кто-то ходит по собесам просто ради интереса, кто-то пишет пет проекты, а кто-то фрилансит. В перерывах между пет-проектами лично я люблю решать небольшие конЕчные (не конЧЕнные=)) задачки.

Как это работает? Вам дается задание, область написания кода и кнопка "test", по нажатию на которую запускаются автотесты, проверяющие ваш код. В некоторых заданиях дополнительно еще ограничено время. Кстати, обычно очень широкий выбор языков программирования.

Вот совсем коротенький список, буду рад, если в комментариях дополните:
1. www.hackerrank.com Платформа запущена в 2012 году. Помимо просто решения задач предлагает еще получить сертификаты в той или иной области, а также есть площадка для поиска работы. По сути, хакерранк это топовая платформа, которая также используется крупными компаниями для найма на работу через решение задач. К примеру - ежегодный Badoo конкурс о найме на работу в Лондон - размещался именно там.

2. www.codewars.com - очень похожая на первую, однако тут упор сделан на писькомерство. При регистрации вам выдают, кажется, 8 кю (8 уровень, как в карате-до), и по решению задач присваивают новый кю/дан. После решения задачи вы попадаете на экран, на котором есть полный список всех решений всех пользователей с лайками по категориям "бест практис" и "самое умное решение". Самое топовое решение наверху. Можно его форкнуть и улучшить. Ну и можно контрибьютить - добавлять свои задания
Read more