Заметки разработчика
Відкрити в Telegram
Заметки о Frontend, Backend и немного DevOps. В основном о #PHP, #Laravel, #JavaScript, #HTML, #CSS, тестировании и настройке серверов. https://www.dev-notes.ru @snakenf
Показати більше463
Підписники
Немає даних24 години
-37 днів
+130 днів
Архів дописів
💡Совет по Laravel:
globalRequestMiddleware
При использовании API может потребоваться использовать определенный User Agent для всех исходящих запросов. Это может облегчить отладку в дальнейшем. Laravel поставляется с globalRequestMiddleware для решения именно этой задачи 🚀.
📱 @dev_notes_ru
#laravel #middleware #request #tips💡 Совет по Laravel: Хелпер `
finish`
Иногда необходимо убедиться, что строка заканчивается определенным символом, например, косой чертой или точкой. Laravel поставляется с хелпером finish, предназначенным именно для этого 🚀.
📱 @dev_notes_ru
#laravel #helper #tips💡 Совет по Laravel : Метод `
shortRelativeDiffForHumans`
Я уверен, что вы уже использовали метод diffForHumans для получения даты в удобочитаемом формате. Но знаете ли вы, что существует более короткий способ — метод shortRelativeDiffForHumans, который позволяет сократить представление даты до более короткого и удобного формата? 🚀
📱 @dev_notes_ru
#laravel #tips💡 Совет по Laravel
А вы знали... что можно временно отключить временные метки (
timestamps) при сохранении модели?
📱 @dev_notes_ru
#laravel #eloquent #tips👩💻 Понимание разницы между объектами
File и Blob
В JavaScript для представления двоичных данных используются объекты File и Blob, но они служат для разных целей и имеют ряд различий.
🖥 Читать статью
📱 @dev_notes_ru
#JavaScript #File #Blob👩💻 Новое в Symfony 7.2: Улучшение составных ограничений
В Symfony 7.2 составные ограничения (Compound Constraints) легче тестировать и можно определять группы валидации и полезную нагрузку через конструктор.
🖥 Читать статью
📱 @dev_notes_ru
#Symfony #Compound #Constraints
💡 Совет по Laravel
А вы знали, что при добавлении условий
where в Query Builder можно использовать динамические имена методов?
Например, если требуется получить заказ, соответствующий определенному количеству (quantity), можно вызвать динамический метод whereQuantity($quantity), вместо where('quantity', $quantity).
📱 @dev_notes_ru
#laravel #eloquent #tips👩💻 Как использовать Pan для простой аналитики в приложении Laravel
В статье мы рассмотрим, как интегрировать Pan в проект Laravel и отслеживать просмотры, наведение курсора и клики, не собирая персональных данных пользователей.
При создании веб-сайта или приложения знание как пользователи взаимодействуют с ним, является ключевым фактором для улучшения качества работы. Однако многие инструменты отслеживания сложны, дорогостоящи или не заботятся о конфиденциальности. Именно здесь на помощь приходит Pan. Pan — это простой, дружественный к конфиденциальности инструмент для отслеживания поведения пользователей в приложениях на Laravel, созданный Nuno Maduro и David Hill из команды Laravel.
🖥 Читать статью
📱 @dev_notes_ru
#Laravel #Pan
👩💻 Новое в Symfony 7.2: Улучшения компонента String
Symfony 7.2 улучшает компонент String, добавляя новый метод kebab-case, новые режимы усечения и испанский инфлектор.
Компонент String предоставляет объектно-ориентированный API для работы со строками и байтами, кодовыми точками UTF-8 и кластерами графем в едином ключе. В Symfony 7.2 мы улучшили его, добавив новые возможности.
🖥 Читать статью
📱 @dev_notes_ru
#Symfony #Component #String
💡 Совет по Laravel: Более чистый синтаксис ускоренной загрузки
Иногда требуется ускоренная загрузка вложенных отношений, и для этого используется точечная нотация. А вы знали, что можно передавать и вложенные массивы? 🚀
📱 @dev_notes_ru
#laravel #eloquent #tips
👩💻 PHP 8.4: Intl: Новая функция `
intltz_get_iana_id` и метод `IntlTimeZone::getCanonicalID`
Расширение Intl в PHP 8.4 предоставляет новую функцию intltz_get_iana_id и новый статический метод IntlTimeZone::getIanaID() в классе IntlTimeZone, возвращающий идентификатор часового пояса IANA для переданного идентификатора часового пояса.
В большинстве ситуаций возвращаемое значение совпадает с переданным идентификатором часового пояса. Однако в ситуациях, когда данный идентификатор часового пояса устарел или заменён другим идентификатором часового пояса, новая функция/метод поможет канонизировать идентификатор часового пояса.
Например, часовой пояс для Кипра, Asia/Nicosia, иногда используется как Europe/Nicosia. Новая функция intltz_get_iana_id и метод IntlTimeZone::getIanaID() обеспечивают простой способ поиска подобных несоответствий и получения правильного идентификатора IANA для часового пояса.
🖥 Читать статью
📱 @dev_notes_ru
#PHP #PHP84 #features👩💻 Новое в Symfony 7.2: Новая опция
choice_lazy для ChoiceType
В Symfony 7.2 представлен новый класс LazyChoiceLoader и опция choice_lazy для ChoiceType улучшающие производительности полей выбора с большим количеством вариантов.
🖥 Читать статью
📱 @dev_notes_ru
#Symfony #LazyChoiceLoader💡 Совет по Laravel
Вы можете добавить URI фрагмент при редиректе на маршрут.
Это очень удобно при редиректе на определенный раздел страницы. Например, раздел отзывов на странице товара.
📱 @dev_notes_ru
#laravel #redirect #tips
💡 Совет по Laravel: Получение возраста даты
Поскольку Laravel использует Carbon под капотом, можно легко получить возраст анализируемой даты 🚀.
📱 @dev_notes_ru
#laravel #carbon #tips
👩💻 Не используйте одну и ту же модель для записи и чтения
Модели — отличный инструмент для взаимодействия с хранилищем данных. Можно задать, как выглядят данные, и это гарантирует, что они совместимы с хранилищем данных, обычно базой данных. Когда есть модель, проверяющая вводимые данные и помогающая их записывать, может возникнуть соблазн использовать её и для извлечения данных. За исключением некоторых базовых CRUD-приложений, обычно это не очень хорошая идея. Давайте разберёмся, почему.
🖥 Читать статью
📱 @dev_notes_ru
#PHP #Model #tips
⚡️ Мои каналы
📩 Заметки разработчика — Заметки о Frontend, Backend и немного DevOps. В основном о PHP, Laravel, JavaScript, CSS, тестировании кода и настройке серверов. 📦 Laravel packages — Пакеты Laravel Packages — созданный сообществом код для добавления дополнительной функциональности в Laravel 👩💻 Осваиваем Laravel — Погрузитесь в профессиональную веб-разработку с PHP и Laravel 📰 Web Dev Trends — Статьи по направлениям связанным с веб-разработкой, которые мне попались.
👩💻 Новое в Symfony 7.2: Атрибут
WhenNot
В Symfony 7.2 появился атрибут WhenNot, позволяющий исключить службу из определенного окружения.
🖥 Читать статью
📱 @dev_notes_ru
#Symfony #Attribute👩💻 Как выполнить определенный файл миграции в Laravel
Если необходимо выполнить всего один файл миграции в Laravel, вот как это сделать.
Независимо от того, как выглядит ваша миграция, можно выполнять отдельные файлы миграции с помощью
artisan. Пример миграции, которую необходимо выполнить:
public function up()
{
Schema::table('users', function (Blueprint $table) {
$table->string('username')->nullable()->unique();
});
}
Эта миграция находится в файле database/migrations/2024_05_09_111656_add_username_to_users_table.php. С помощью опции --path можно указать миграцию, которую необходимо выполнить:
php artisan migrate --path=/database/migrations/2024_05_09_111656_add_username_to_users_table.php
Также можно указать несколько путей, разделенных запятыми, в опции --path, что позволит выполнить более одного конкретного файла миграции:
php artisan migrate --path=/database/migrations/2024_05_09_111656_add_username_to_users_table.php,/database/migrations/2024_09_12_000001_create_customer_columns.php
Таким образом, выполнить определенную миграцию в Laravel очень просто. Просто используйте опцию --path и укажите пути к файлам миграции, которые необходимо выполнить.
📱 @dev_notes_ru
#Laravel #artisan #migration #tips