PHP Portal | Программирование
رفتن به کانال در Telegram
Присоединяйтесь к нашему каналу и погрузитесь в мир для PHP-разработчика Связь: @devmangx
نمایش بیشتر4 832
مشترکین
-424 ساعت
-147 روز
-7730 روز
آرشیو پست ها
Болезненный урок, который я продолжаю усваивать, выполняя задачи по миграции данных в проде: нужно заранее убедиться, что изменённые записи можно легко отследить в том или ином виде
Если облажаться со скриптом миграции (а у меня такое бывало), то хотя бы можно сделать выборку из базы по всем записям с одинаковым значением поля
updated_at, чтобы начать процесс восстановления или отката данных к исходному состоянию и попробовать снова.
Вероятность того, что у записей будет точно одинаковый updated_at, довольно мала, поэтому это простой и универсальный способ, который работает со всеми моделями.
Конечно, можно использовать механизмы защиты, такие как транзакции в БД, но это не панацея, если не выбрасывается исключение, транзакция не откатывается. Кроме того, таблица может быть слишком большой или слишком активно использоваться, чтобы пытаться заблокировать её целиком.
Полезно заранее продумывать худший сценарий и быть к нему готовым, когда приходится работать с продакшен-базами - на всякий случай
👉 @PHPgx👩💻 Всем программистам посвящается!
Вот 17 авторских обучающих IT каналов по самым востребованным областям программирования:
Выбирай своё направление:
👩💻 Backend — t.me/backend_ready
📱 GitHub & Git — t.me/github_ready
👩💻 Frontend — t.me/frontend_ready
📱 JavaScript — t.me/javascript_ready
👩💻 Весь IT — t.me/it_ready
📖 IT Книги — t.me/books_ready
👩💻 Python — t.me/python_ready
🤔 InfoSec & Хакинг — t.me/hacking_ready
🖥 SQL & Базы Данных — t.me/sql_ready
🤖 Нейросети — t.me/neuro_ready
👩💻 C/C++ — https://t.me/cpp_ready
👩💻 C# & Unity — t.me/csharp_ready
👩💻 Java — t.me/java_ready
👩💻 Linux — t.me/linux_ready
🖼️ DevOps — t.me/devops_ready
👩💻 Bash & Shell — t.me/bash_ready
🖥 Design — t.me/design_ready
📌 Гайды, шпаргалки, задачи, ресурсы и фишки для каждого языка программирования!
Иногда столбец в БД не нужен
Для одноразовых значений вроде токенов подтверждения email или OTP → просто закешируй их.
🔹Автоистечение
🔹Чище схема
🔹Без лишних столбцов
👉 @PHPgx
+1
Совет по filamentphp
Группируйте по датам, а не по полным таймстампам. Применяйте
date() к группе для более чистых ежедневных сводок
Ссылка на доку: https://filamentphp.com/docs/4.x/tables/grouping#date-groups
👉 @PHPgxСоздавать высокоэффективные сайты можно даже с основами html!
Время поговорить о книгах. О «Создаем динамические веб-сайты с помощью PHP, MySQL, JavaScript, CSS и HTML5». Седьмое издание бестселлера вышло у Sprint book!
🔎 В ней:
1. Создание мощных веб-сайтов в сочетании веб-стандартов и технологий с открытым исходным кодом.
2. Динамическое веб-программирование с использованием современных технологий: PHP, MySQL, JavaScript, CSS, HTML, Node.js и мощной библиотеки React.
3. Объясняется, как преобразовать сайт в мобильное веб-приложение.
Заглядывайте за новинкой, заказывайте книгу и улучшите свои навыки в создании сайтов!
🖇 Сайт
А если нет желания учить язык программирования, «ChatGPT, сделай мне сайт» покажет, как правильно составлять промт.
🖇 Покупайте на сайте!
2VtzqwjgXAV
+1
Совет по filamentphp
Преобразуйте строки таблицы в сетку с помощью
$table->contentGrid(). Отлично подходит для UI в стиле карточек или когда список выглядит слишком тесным.
На мобильных = 1 колонка
Начиная с md = 2 колонки
Начиная с xl = 3 колонки
Ссылка на доку: https://filamentphp.com/docs/4.x/tables/layout#arranging-records-into-a-grid
👉 @PHPgx🔥Прими участие в Хакатоне от ИТ-холдинга Т1 в Новосибирске и поборись за призовой фонд 800 000 рублей!
Когда: 23–26 октября
Формат: онлайн + финал на площадке
Участвуй, если ты:
🔹обучаешься на технической или ИТ-специальности;
🔹развиваешься в направлении разработки, аналитики, CV, ML или DevOps;
🔹сможешь быть в Новосибирске 26 октября.
Выбери свой кейс:
✴️Цифровой дресс-код: фон, который выделяет вас. Создай локальный ML-модуль сегментации видео и генератор персонализированных фонов. ✴️CodeMetrics: метрики, которые помогают расти. Разработай систему автооценки эффективности команд через анализ Git-метрик.Почему стоит участвовать: 🔘Кейс в портфолио и полезная обратная связь от менторов Т1; 🔘Шанс проявить себя, чтобы начать карьеру в одной из крупнейших ИТ-компаний; 🔘Реальный опыт командной работы; 🔘Мерч и атмосфера сильного комьюнити — в Т1 более 5 000 джунов из 580+ вузов России и Беларуси. Регистрация открыта! ➡️ Успей до 21 октября по ссылке. erid: 2Vtzqwmd32u
Мега-совет по PHP: используйте
#[SensitiveParameter] для чувствительных параметров.
PHP скроет их значение в стектрейсах, сообщениях об ошибках и логах..
Это предотвращает случайные утечки секретов на проде. Абсолютный шедевр. ✨
👉 @PHPgxСовет по Laravel
Нужно интегрироваться со сторонним сервисом? Поскольку HTTP-клиент в Laravel поддерживает макросы, можно определить под него отказоустойчивый HTTP-клиент с помощью макроса и использовать его по всему приложению
Смотри пример, чтобы узнать, как
👉 @PHPgx
Джуны — всё, ИИ победил. По статистике BCG, за последний год компании выбросили на улицу 75% молодняка. При этом миддлам и сеньорам зарплаты подняли в 4 (!) раза.
Чтобы подняться до уровня элит в аномально короткие сроки — подпишитесь на легендарные каналы для айтишников:
Новости и инсайды
Фронтенд разработка
ИИ и биг дата
Node js
Вёрстка
Питон и нейросети
QA-тестировщики
Там раскрыли инфу из курсов общей стоимостью 5.000.000р в эксклюзивных пошаговых инструкциях. Пока остальные пойдут на дно якорем, вы войдете в 10% тех, кто сломал систему.
Можно сгенерировать коллекцию Postman прямо из своих Laravel-роутов
Просто установи пакет
laravel-postman и выполни вот это
👉 @PHPgx+1
Совет по работе с filamentphp
Действия для строк таблицы не обязательно должны располагаться в конце.
С помощью
RecordActionsPosition::BeforeColumns или BeforeCells их можно перенести перед данными или даже перед колонкой с чекбоксами.
Документация: https://filamentphp.com/docs/4.x/tables/actions#positioning-record-actions-before-columns
👉 @PHPgx🤨Кто-то всё еще закидывает на Steam, переплачивая за комиссию?
Пользователи Kupikod Premium уже даже не вспоминают это слово, потому что пополняют Steam БЕЗ комиссии, то есть 1к1, рубль в рубль:
Заплатил 1000 рублей — получишь на баланс тоже 1000 рублей
Подготовься к осенней распродаже Steam как следует — oформляй Kupikod Premium и забудь про слово комиссия вообще!
Использование именованных конструкторов может сильно упростить создание исключений
«Чит-код», о котором я всё время забываю, и который делает это возможным - это возможность PHP-классов устанавливать protected/private свойства у экземпляров, созданных внутри самого класса. Это супер-удобно
Это избавляет от необходимости переопределять конструктор и даёт больше свободы добавлять новые именованные конструкторы в будущем
👉 @PHPgx
Привет, Laravel-разработчики
Вы наверняка знаете про метод
withoutGlobalScopes() в классе модели Eloquent, который отключает все глобальные скоупы у модели для текущего запроса.
Начиная с Laravel v12.29.0 у нас появился новый метод withoutGlobalScopesExcept(), который позволяет отключить все остальные скоупы, кроме указанных.
Простое, но отличное добавление в фреймворк. Что думаете об этом?
👉 @PHPgxРоссийский хакер Валерий Илларионов третий раз нашёл лазейку в коде ChatGPT 5
Айтишник за пару дней нашёл способ снять ограничения с GPT и настраивать её под любые задачи — от взлома аккаунтов до изготовления оружия
В своём блоге «Доктор GPT» он делится множеством других лазеек, которые всё ещё не пофиксили.
• Как бесплатно пользоваться Veo 3 и другими генераторами видео
• Как генерировать фото 18+ в Midjourney
• Отключение ограничений в Gemini, GPT и Perplexity
Секретные промты и протоколы собраны здесь — @DoctorGPT 🤫
Партиционирование таблиц в MySQL может существенно повысить производительность запросов за счёт разбивки больших таблиц на более мелкие физические файлы
👉 @PHPgx
Совет по Laravel
Рейт-лимитинг иногда бывает непростым, верно? Но не в Laravel.
Посмотри, как просто применить rate limit для каждой команды и тарифного плана, с фоллбеком на IP
👉 @PHPgx
⚡️ На Stepik вышел курс по Linux
Внутри 20+ модулей: от установки Linux и работы с файлами до сетей, прав, дисков, процессов, автоматизации на Bash и многого другого. Всё сразу закрепляется на практике (200+ заданий с автопроверкой).
Материал подаётся понятным языком, шаг за шагом, на реальных примерах и с наглядными схемами.
После прохождения вы получите сертификат, который можно добавить в резюме.
Есть бесплатные демо-уроки для ознакомления. В ближайшие 48 часов курс доступен со скидкой 20%: открыть курс на Stepik (скидка применяется по этой ссылке)
