Библиотека PHP программиста 👨🏼‍💻👩‍💻
2.18K subscribers
354 photos
169 videos
7 files
350 links
Полезные материалы по PHP, Laravel, Symfony, CodeIgniter, CakePHP, Phalcon

По всем вопросам @evgenycarter
Download Telegram
Вы предпочитаете отправлять почту напрямую в коде или использовать класс Mailable?

👉 @php_lib
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
Ты используешь ?? или остаёшься на isset()?

Удобное сокращение или запутанный синтаксис? Что думаешь...

👉 @php_lib
👍7
Сегодня хочу показать вам, как магические методы в PHP могут упростить жизнь, если использовать их с умом.

Многие знают о __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
🔥2
Когда вы заменяете кучу проверок isset() на optional chaining (?->):

Это умное решение или удар по читаемости?

👉 @php_lib
👍7🔥1
Совет по Laravel💡

Schedule Shell Commands

Знаете ли вы, что Laravel Scheduler позволяет выполнять команды в операционной системе?

📲 Мы в MAX

👉 @php_lib
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2👎1
Профилирование PHP (Laravel) приложений с xhprof. Учимся искать ботлнеки

Вам знакомо то чувство, когда ваш PHP-код отрабатывает за дофига миллисекунд, а иногда и секунд, и вы не можете понять, в чём дело и где тот говнокод, который я (или не я, а мой коллега) когда-то написал? В этой статье хочу немного рассказать на примере профайлинга PHP-кода, как перестать гадать и начать выявлять боттлнеки, которые всё тормозят. Короче, помочь поискать говнокод. После этого у многих из вас появится понимание, как дать своему приложению прирост производительности с помощью крутых инструментов профайлинга, таких как xhprof и Buggregator.

https://habr.com/ru/articles/823156/

📲 Мы в MAX

👉 @php_lib
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Совет по Laravel💡

Знаете ли вы, что метод whereAny(), может осуществлять поиск по нескольким столбцам, используя логику OR.

📲 Мы в MAX

👉 @php_lib
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4