💡Знал ли вы, что…
Метод Number::abbreviate в Laravel преобразует сложные числа в удобочитаемый формат:
👉 @php_lib
Метод Number::abbreviate в Laravel преобразует сложные числа в удобочитаемый формат:
👉 @php_lib
👍11❤1
💡Совет по Laravel
Определение языка пользователя
Laravel использует компонент HttpFoundation из Symfony, который предоставляет полезные возможности. Если вы работаете с локализацией и нужно определить предпочитаемый язык пользователя, просто вызовите метод getPreferredLanguage 🚀
👉 @php_lib
Определение языка пользователя
Laravel использует компонент HttpFoundation из Symfony, который предоставляет полезные возможности. Если вы работаете с локализацией и нужно определить предпочитаемый язык пользователя, просто вызовите метод getPreferredLanguage 🚀
👉 @php_lib
👍5
🚫 Хватит бороться с монолитом!
Узнайте, как создавать масштабируемые и гибкие приложения на PHP и Symfony.
🎯 На открытом уроке разберем современную event-driven архитектуру:
— Symfony Messenger: обработка событий синхронно и асинхронно.
— CQRS: разделение команд и запросов для производительности.
— Event Sourcing: как хранить историю всех изменений состояния.
✅ Поймем, в каких проектах эти подходы действительно необходимы, и посмотрим на живой код.
💡 Вебинар будет полезен:
— PHP и Symfony-разработчикам, растущим до уровня мидл+ и сеньоров.
— Тимлидам и архитекторам, планирующим устойчивые к нагрузкам системы.
— Начинающим специалистам, чтобы увидеть перспективы развития.
📅 Регистрируйтесь на бесплатный вебинар «Event-driven архитектура в PHP и Symfony» 1 октября в 20:00!:
https://vk.cc/cPQvA3
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Узнайте, как создавать масштабируемые и гибкие приложения на PHP и Symfony.
🎯 На открытом уроке разберем современную event-driven архитектуру:
— Symfony Messenger: обработка событий синхронно и асинхронно.
— CQRS: разделение команд и запросов для производительности.
— Event Sourcing: как хранить историю всех изменений состояния.
✅ Поймем, в каких проектах эти подходы действительно необходимы, и посмотрим на живой код.
💡 Вебинар будет полезен:
— PHP и Symfony-разработчикам, растущим до уровня мидл+ и сеньоров.
— Тимлидам и архитекторам, планирующим устойчивые к нагрузкам системы.
— Начинающим специалистам, чтобы увидеть перспективы развития.
📅 Регистрируйтесь на бесплатный вебинар «Event-driven архитектура в PHP и Symfony» 1 октября в 20:00!:
https://vk.cc/cPQvA3
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
🚀 Если производительность является приоритетом в вашем проекте, возможно, стоит полностью отключить lazy loading.
Eloquent выбросит огромное исключение, если вы попытаетесь обратиться к связи, которая не была загружена заранее (eager-loaded).
👉 @php_lib
Eloquent выбросит огромное исключение, если вы попытаетесь обратиться к связи, которая не была загружена заранее (eager-loaded).
👉 @php_lib
👍2😁1
🔥 PHP-разработчики, готовы прокачать Laravel до уровня, на который другие тратят годы?
Онлайн курс «Framework Laravel» - ваш шанс за 3 месяца освоить фреймворк, который делает разработку проще, быстрее и интереснее.
Какие преимущества обучения по Laravel:
• Laravel ускоряет разработку за счет элегантного синтаксиса, богатой экосистемы и инструментов Artisan.
• Интуитивный ORM Eloquent упрощает работу с данными и повышает читаемость кода.
• Фреймворк масштабируется от MVP до высоконагруженных систем, имеет встроенные средства оптимизации, легко интегрируется с Vue/React/Angular, поддерживается активным сообществом и подтвержден практикой крупных компаний.
Также приглашаем вас на бесплатный вебинар «Advanced Eloquent Relations в Laravel»
🗓 7 октября, 20:00
На вебинаре:
• Кастомные отношения в Laravel Eloquent — от Post до Comment и Author
• Использование отношений за пределами реляционных БД
• Практика на реальных примерах
Кто придёт первым - освоит секреты продвинутого Laravel и научится создавать отношения там, где другие даже не думают их строить.
Записаться на вебинар: https://vk.cc/cQ0xUP
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Онлайн курс «Framework Laravel» - ваш шанс за 3 месяца освоить фреймворк, который делает разработку проще, быстрее и интереснее.
Какие преимущества обучения по Laravel:
• Laravel ускоряет разработку за счет элегантного синтаксиса, богатой экосистемы и инструментов Artisan.
• Интуитивный ORM Eloquent упрощает работу с данными и повышает читаемость кода.
• Фреймворк масштабируется от MVP до высоконагруженных систем, имеет встроенные средства оптимизации, легко интегрируется с Vue/React/Angular, поддерживается активным сообществом и подтвержден практикой крупных компаний.
Также приглашаем вас на бесплатный вебинар «Advanced Eloquent Relations в Laravel»
🗓 7 октября, 20:00
На вебинаре:
• Кастомные отношения в Laravel Eloquent — от Post до Comment и Author
• Использование отношений за пределами реляционных БД
• Практика на реальных примерах
Кто придёт первым - освоит секреты продвинутого Laravel и научится создавать отношения там, где другие даже не думают их строить.
Записаться на вебинар: https://vk.cc/cQ0xUP
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Совет по Laravel💡
Знаете ли вы .... tap() = Tweak and Return 🪄
Да, в Laravel метод tap() позволяет изменить объект и вернуть его обратно — идеально для чистого и читаемого кода.
👉 @php_lib
Знаете ли вы .... tap() = Tweak and Return 🪄
Да, в Laravel метод tap() позволяет изменить объект и вернуть его обратно — идеально для чистого и читаемого кода.
👉 @php_lib
👍9
Совет по Laravel💡
Если вы хотите автоматически удалять старые записи, используйте трейт Prunable.
Нет необходимости писать собственные команды.
👉 @php_lib
Если вы хотите автоматически удалять старые записи, используйте трейт Prunable.
Нет необходимости писать собственные команды.
👉 @php_lib
👍6🤔2😁1
This media is not supported in your browser
VIEW IN TELEGRAM
🐘 Ваш PHP-код «ест» слишком много ресурсов и работает медленнее, чем хотелось бы? Это частая проблема даже у опытных разработчиков.
Алгоритмы не всегда решают задачу. Чтобы ускорить код, нужно понимать, как работает память и что происходит «под капотом» PHP. Именно это и будет темой нашего открытого урока курса.
🚀 Вместе мы разберём как PHP хранит данные, и освоим простые приёмы оптимизации, которые реально сокращают время выполнения кода и экономят ресурсы.
🔴 Присоединяйтесь к открытому вебинару 15 октября в 20:00 (МСК): https://vk.cc/cQm0EF
Урок проходит в преддверии старта курса «PHP Developer. Professional».
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Алгоритмы не всегда решают задачу. Чтобы ускорить код, нужно понимать, как работает память и что происходит «под капотом» PHP. Именно это и будет темой нашего открытого урока курса.
🚀 Вместе мы разберём как PHP хранит данные, и освоим простые приёмы оптимизации, которые реально сокращают время выполнения кода и экономят ресурсы.
🔴 Присоединяйтесь к открытому вебинару 15 октября в 20:00 (МСК): https://vk.cc/cQm0EF
Урок проходит в преддверии старта курса «PHP Developer. Professional».
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
❤1
Сегодня хочу поговорить о теме, которая часто мешает PHP-разработчикам писать красивый и устойчивый код - магические методы.
Да, те самые
Когда код полагается на магию, отладка превращается в игру «угадай, откуда взялось это значение». IDE не подсказывает типы, автодополнение не работает, а дебаггер видит лишь хаос. Я не говорю, что магические методы нужно запретить. Они бывают полезны, например, в паттерне Proxy или для ленивой загрузки. Но использовать их стоит осознанно, с понятным контрактом.
👉 Советы от меня:
- Если хочешь гибкости — лучше внедри
- Если используешь
- И главное - не прячь логику под магию. Пусть код говорит сам за себя.
👉 @php_lib
Да, те самые
__get, __set, __call, __toString и компания. Они вроде бы удобные: можно ловко обращаться к несуществующим свойствам, вызывать методы, которых нет, и всё работает. Но вот вопрос — а как это тестировать и поддерживать?Когда код полагается на магию, отладка превращается в игру «угадай, откуда взялось это значение». IDE не подсказывает типы, автодополнение не работает, а дебаггер видит лишь хаос. Я не говорю, что магические методы нужно запретить. Они бывают полезны, например, в паттерне Proxy или для ленивой загрузки. Но использовать их стоит осознанно, с понятным контрактом.
👉 Советы от меня:
- Если хочешь гибкости — лучше внедри
__call через интерфейс или трейт с чёткой логикой.- Если используешь
__get / __set — документируй все «виртуальные» свойства в phpdoc.- И главное - не прячь логику под магию. Пусть код говорит сам за себя.
👉 @php_lib
👍7
Оптимизация скорости работы PHP кода 🏎️
Сегодня я покажу вам несколько простых, но эффективных способов ускорить выполнение PHP-скриптов. Оптимизация кода – важная часть работы разработчика, ведь никто не любит медленные сайты. 🚀
🔥 1. Избегайте лишних запросов к БД
Частая ошибка – несколько одинаковых запросов к базе данных в одном запросе. Используйте кэширование (
🔥 2. Используйте
Функция
🔥 3. Не злоупотребляйте
Если у вас массив с десятками тысяч элементов, попробуйте
🔥 4. Подключайте файлы правильно
Разница между
🔥 5. Включите OPCache
OPCache кэширует байт-код PHP и ускоряет его выполнение в разы. Включите его в
🔥 6. Используйте
Функция
👉 @php_lib
Сегодня я покажу вам несколько простых, но эффективных способов ускорить выполнение PHP-скриптов. Оптимизация кода – важная часть работы разработчика, ведь никто не любит медленные сайты. 🚀
🔥 1. Избегайте лишних запросов к БД
Частая ошибка – несколько одинаковых запросов к базе данных в одном запросе. Используйте кэширование (
Redis, Memcached), а если данные редко меняются – сохраняйте их в файл. 🔥 2. Используйте
isset() вместо array_key_exists() Функция
isset() работает быстрее, чем array_key_exists(), потому что она не только проверяет наличие ключа, но и сразу его значение.
// Медленный вариант
if (array_key_exists('key', $array)) { }
// Быстрый вариант
if (isset($array['key'])) { }
🔥 3. Не злоупотребляйте
foreach при больших объемах данных Если у вас массив с десятками тысяч элементов, попробуйте
array_map() или array_walk() – они работают быстрее за счет встроенной оптимизации в C. 🔥 4. Подключайте файлы правильно
Разница между
require, include, require_once и include_once может сильно повлиять на производительность. require_once проверяет, был ли уже подключен файл, что замедляет выполнение. Если точно знаете, что файл не дублируется – используйте require. 🔥 5. Включите OPCache
OPCache кэширует байт-код PHP и ускоряет его выполнение в разы. Включите его в
php.ini:
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.validate_timestamps=1
🔥 6. Используйте
json_encode() вместо serialize() Функция
json_encode() работает быстрее, чем serialize(), и при этом генерирует более компактные данные.
$data = ['name' => 'John', 'age' => 25];
// Медленный вариант
$serialized = serialize($data);
// Быстрый вариант
$json = json_encode($data);
👉 @php_lib
👍7❤2🙈1
🔥 От PHP-разработчика к эксперту по Битрикс24! Старт набора в группу курса “Разработчик Битрикс24" в OTUS. Открыт прием заявок
Разработка на Битрикс24 — востребованная компетенция для автоматизации бизнес-процессов. Отправьте заявку на обучение и получите спеццену при поступлении в группу.
Вы научитесь:
✅ Разворачивать Битрикс24 на собственном сервере
✅ Создавать компоненты, модули и REST-приложения
✅ Автоматизировать процессы с помощью бизнес-процессов
✅ Интегрировать Битрикс24 с внешними системами
🎓 Подробности уточняйте у менеджера
🚀 Не упустите шанс стать экспертом по Битрикс24 и повысить свою квалификацию!
👉 Оставить заявку https://vk.cc/cQqXs9
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Разработка на Битрикс24 — востребованная компетенция для автоматизации бизнес-процессов. Отправьте заявку на обучение и получите спеццену при поступлении в группу.
Вы научитесь:
✅ Разворачивать Битрикс24 на собственном сервере
✅ Создавать компоненты, модули и REST-приложения
✅ Автоматизировать процессы с помощью бизнес-процессов
✅ Интегрировать Битрикс24 с внешними системами
🎓 Подробности уточняйте у менеджера
🚀 Не упустите шанс стать экспертом по Битрикс24 и повысить свою квалификацию!
👉 Оставить заявку https://vk.cc/cQqXs9
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
💩3🥱1
Совет по Laravel💡
Знал ли ты… что можно импортировать несколько классов из одного пространства имён вот так☝️
👉 @php_lib
Знал ли ты… что можно импортировать несколько классов из одного пространства имён вот так☝️
👉 @php_lib
👍2👎1
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ Laravel-разработчики, готовы вывести работу с иерархиями на новый уровень?
Бесплатный вебинар «Использование Nested Sets в Laravel»
🗓 22 октября, 20:00
На вебинаре вы:
• Погрузитесь в необычную структуру данных Вложенные множества
• Разберёте плюсы и минусы этой структуры
• Увидите, как применять её на практике в Laravel-приложении
🎯 Кому будет полезно:
• Веб-разработчикам, работающим с иерархическими или древовидными структурами в своих проектах
⚠️ Это редкий шанс увидеть реальный пример использования Nested Sets в Laravel. Кто придёт первым - получит навыки, которые обычно осваивают месяцы!
❗️Напоминаем, что до 24 октября действует скидка 15% при полной оплате на курс «Framework Laravel». Не упустите возможность прокачать свои проекты и навыки!
Записаться на вебинар: https://vk.cc/cQwaJN
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Бесплатный вебинар «Использование Nested Sets в Laravel»
🗓 22 октября, 20:00
На вебинаре вы:
• Погрузитесь в необычную структуру данных Вложенные множества
• Разберёте плюсы и минусы этой структуры
• Увидите, как применять её на практике в Laravel-приложении
🎯 Кому будет полезно:
• Веб-разработчикам, работающим с иерархическими или древовидными структурами в своих проектах
⚠️ Это редкий шанс увидеть реальный пример использования Nested Sets в Laravel. Кто придёт первым - получит навыки, которые обычно осваивают месяцы!
❗️Напоминаем, что до 24 октября действует скидка 15% при полной оплате на курс «Framework Laravel». Не упустите возможность прокачать свои проекты и навыки!
Записаться на вебинар: https://vk.cc/cQwaJN
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Ты используешь ?? или остаёшься на isset()?
Удобное сокращение или запутанный синтаксис? Что думаешь...
👉 @php_lib
Удобное сокращение или запутанный синтаксис? Что думаешь...
👉 @php_lib
👍5
Сегодня хочу показать вам, как магические методы в PHP могут упростить жизнь, если использовать их с умом.
Многие знают о
Например, рассмотрим кейс с динамическими свойствами:
Мы не определяли свойство
Но! ⚠️
Если переусердствовать - код становится магическим не только для PHP, но и для вас самого 😄
Отладка, автодополнение и читаемость страдают. Поэтому правило простое:
используйте магию осознанно.
👉 @php_lib
Многие знают о
__construct() и __destruct(), но PHP предлагает целый арсенал магических методов - от __get() и __set() до __invoke() и __callStatic().Например, рассмотрим кейс с динамическими свойствами:
class Config {
private array $data = [];
public function __get($name) {
return $this->data[$name] ?? null;
}
public function __set($name, $value) {
$this->data[$name] = $value;
}
}
$config = new Config();
$config->appName = 'MyApp';
echo $config->appName; // MyApp
Мы не определяли свойство
appName, но с помощью __get() и __set() сделали объект гибким, почти как массив. Это удобно для конфигов, DTO и API-ответов.Но! ⚠️
Если переусердствовать - код становится магическим не только для PHP, но и для вас самого 😄
Отладка, автодополнение и читаемость страдают. Поэтому правило простое:
используйте магию осознанно.
👉 @php_lib
👍1
Пишете на PHP, но чувствуете, что застряли на одном уровне?
На практическом курсе от OTUS вы разберёте реальные продуктовые задачи, научитесь применять принципы DDD, Clean Architecture, Layered Architecture на практике, освоите автоматическое тестирование и деплой в продакшн, поймёте, как оценивать производительность и строить отказоустойчивые системы.
❗️ Программа составлена практикующими экспертами, а диплом OTUS востребован у ведущих IT-компаний. Вас ждет особый упор на инфраструктуру: Docker, облака, очереди, базы данных и современные инструменты командной работы. Это последний шанс попасть в поток.
• Живые лекции от экспертов;
• Реальная практика;
• Востребованный диплом.
✅ Пройдите короткое вступительное тестирование, получите скидку по промокодуPHP_PROF_10 и закрепите за собой место:
https://vk.cc/cQBAUG
Срок действия промокода с 25.10 по 10.11 подробности уточняйте у менеджеров!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
На практическом курсе от OTUS вы разберёте реальные продуктовые задачи, научитесь применять принципы DDD, Clean Architecture, Layered Architecture на практике, освоите автоматическое тестирование и деплой в продакшн, поймёте, как оценивать производительность и строить отказоустойчивые системы.
❗️ Программа составлена практикующими экспертами, а диплом OTUS востребован у ведущих IT-компаний. Вас ждет особый упор на инфраструктуру: Docker, облака, очереди, базы данных и современные инструменты командной работы. Это последний шанс попасть в поток.
• Живые лекции от экспертов;
• Реальная практика;
• Востребованный диплом.
✅ Пройдите короткое вступительное тестирование, получите скидку по промокоду
https://vk.cc/cQBAUG
Срок действия промокода с 25.10 по 10.11 подробности уточняйте у менеджеров!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
🔥2
Когда вы заменяете кучу проверок
Это умное решение или удар по читаемости?
👉 @php_lib
isset() на optional chaining (?->):Это умное решение или удар по читаемости?
👉 @php_lib
👍5
