OneCode
1.38K subscribers
634 photos
64 videos
3 files
535 links
Full Stack на PHP, Laravel и всё, что с этим связано.
YouTube: https://www.youtube.com/@onecode_blog
Download Telegram
В VSCode есть просмотр Markdown 👍

#vscode
👍8🔥2
Начиная с PHP 8 появилось объединение типов (Union types).

Простыми словами - можно указывать сразу несколько типов для агрумента функции через символ
|
(пример на скрине).

Просто напомнил 😃

#php
🔥12👍4
На сайте кафедрального собора PHP и пакет MPDF для генерации PDF.

Всё хорошо, кроме разработчика 😀
👍3🤯3
Кусочек материала из курса для тимлидов ☝️
👍6🔥1
Интересные размышления на тему микросервисов и монолита.

https://habr.com/ru/post/668300/

#microservices #monolith
👍3
В отпуске 😀
Идём по Балтийскому морю на спортивном катере мощностью 720 лошадей 🚀
🔥16😁1
Некоторые шаги для обновления Nuxt 2 до 3 версии

https://serversideup.net/courses/how-to-upgrade-nuxt-2-to-nuxt-3/

#nuxt #vue
👍1
Heroicons 2.0

Новая версия популярных SVG-иконок, которые часто используются вместе с Tailwind CSS.

- Иконки перерисованы с нуля 😍
- Доступны 3 варианта: тонкий, толстый и маленький 😄
- Появились пакеты для Vue и React 🔥

https://heroicons.com

#heroicons #icons
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍1
Запуск скрипта на PHP в безсерверной (serverless) среде на примере Digital Ocean 👍

https://php.watch/articles/php-serverless-digital-ocean

#php #serverless
👍21🔥1
Агрегация вместо наследования

Большая, но интересная статья, которая по-шагам показывает минусы наследования и плюсы агрегации в ООП.

Как агрегация и ключевое слово final позволяют снизить зацепление, следовать SOLID и защитить код от неправильного использования.

Вконце даны полезные советы по тестированию кейсов без наследования.

Рекомендую 👍

https://habr.com/ru/post/482154/

#oop #php #solid
Please open Telegram to view this post
VIEW IN TELEGRAM
3
В PHP 8.2 можно будет объявлять константы в трейтах! Реально несколько раз НЕ хватало этой возможности.

Вообще начиная с версии PHP 8 приходит очень много новых изменений (круто!), особенно мелких, про которые мало кто знает.

#php #php82
4
Нужна серия постов про новые фишки PHP 8+ с примерами?
Anonymous Poll
92%
TRUE
8%
FALSE
Шпаргалка по консольным командам Laravel.

Рекомендую хотя бы просто пробежаться по списку команд и изучить те, которые не знаешь!

https://artisan.page

#laravel #artisan
👍6
Book24 работает на Nuxt

Частенько открываю исходный код странички, чтобы посмотреть на чём работает фронтенд.

Становится приятно, если вижу Vue или Nuxt. Не знаю почему =)

https://book24.ru
👍2🔥2
А ты знал, что PHP-функцию
array_filter
можно вызывать с одним массивом (без callback-функции)?

В этом случае под капотом он просто приводит все значения массива к
boolean
.

В итоге вернёт новый массив с элементами, которые стали
true
после приведения.

Примеры на скрине ☝️

Лайк? Лайк!

#php
👍8
Конкурс для разработчиков

Хочешь попробовать свои силы в реальной задаче? Время пришло!

Представь, что тебе на работе дали задачу и сегодня нужно её решить.

Победит тот, кто первый напишет правильное и красивое решение задачи в комментариях к этому посту.

Правильное и красивое решение - решение, которое понравится мне 😁 А еще можно голосовать лайками!

Описание задачи
Вывести на страницу (vue илил laravel blade) имя, страну и email пользователя через запятую. Все свойства - НЕ обяательные. Например страны или email у пользователя может не быть (null).

Пример результата
Максим, Россия, example@1code.ru


От тебя требуется написать простое и продуманное решение задачи.

Реализация в контексте шаблонизатора Vue или Laravel Blade. То есть можно
{{ user.name }}
и всё остальное.

Условия конкурса
- Присылай код текстом (не скрин)
- Можно писать на JS или PHP
- Нельзя изменять сообщение
- Приз 500 рублей на карту

Если есть вопросы - пиши в комментариях.

Приглашай друзей - сделай репост! 🔥

#contest
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Результат конкурса

Это именно тот вариант, который я хотел увидеть - мало кода, легко читается и универсальный.

Мы создаём массив с данными юзера, фильтруем его и склеиваем через запятую с пробелом.

Помимо этого не забыл про оператор
null safe
(безопасный null) для страны пользователя.

Код на PHP будет выглядеть так:
implode(', ', array_filter([$user->name, $user->country?->name, $user->email]));


Можно использовать коллекцию Laravel:
collect([$user->name, $user->country?->name, $user->email])->filter()->implode(', ');


Но специально для этого создавать коллекцию совсем не обязательно.

Поздравляем победителя! 🥳
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍3