Благодаря поддержке Unicode 16 расширение MBString может работать со всеми новейшими символами Emoji, а также имеет самую актуальную информацию о смене регистра и ширине символов.
Расширение MBString содержит подмножество данных из спецификации Unicode, используемое для таких операций, как преобразование заданной строки в верхний или нижний регистр, определение ширины строки (удобно для некоторых восточноазиатских шрифтов) и т.д.
В PHP 8.3 расширение MBString включало данные стандарта Unicode 14.0, выпущенного в сентябре 2022 года. В PHP 8.4 источник данных Unicode Character Database (UCD) был обновлён с 14.0 до 16.0, выпущенного в 2024 сентябре. Unicode 16.0 — это последняя версия UCD, доступная на этот момент.
В версии Unicode 15.0, 15.1 и 16.0 добавлено 4 489, 627 и 5 185 новых символов. Кроме того, три версии Unicode вместе взятые поддерживают 11 дополнительных скриптов. Однако для расширения MBString важны обновления в правилах сложения регистра символов, влияющие на такие функции, как
mb_strtolower, mb_strtoupper и назначение значения восточноазиатской ширины, определяющее, считается ли данный символ нормальной ширины или широким (mb_strwidth).Прямых изменений в функциях MBString нет. Данные символов Юникода являются частью самого расширения MBString и будут использоваться во всех функциях PHP 8.4.
#php #php84 #mbstring
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
Мы часто используем
find(), но знаете ли вы, что можно передать массив ID и выбрать конкретные столбцы? #laravel #php #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
Всего три строки кода, и вы получаете плавный переход к
height: auto.& {
interpolate-size: allow-keywords;
}
p {
transition: 1s;
}
p:not(:hover) {
height: 5lh;
}Все волшебство выполняет
interpolate-size: allow-keywords. Подробнее об этом читайте в статье Анимация height: auto; (и другие ключевые слова внутреннего размера) в CSS.Пока поддерживается только в Chromium-based браузерах.
#css #feature #animation
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
Разработчик JavaScript, пишущий чистый, эффективный и лаконичный код может значительно сократить время разработки. Понимание ряда удобных сокращений JavaScript может сделать код более читаемым и помочь избежать повторяющихся шаблонов. В статье мы рассмотрим 10 мощных сокращений JavaScript, способных сэкономить часы работы над кодом и повысить производительность.
#javascript #js #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
При работе с моделями вам может понадобиться подсчёт отношений. Если вы забыли его загрузить, всегда можно использовать
loadCount, чтобы подгрузить подсчёт на лету #laravel #php #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥1
Используйте функцию
conic-gradient() и новую цветовую интерполяцию, чтобы создать симпатичный цветовой круг..box {
background: conic-gradient(in hsl longer hue,red 0 0);
}longer) путь между красным (red) и красным.#css #gradient #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
async и defer для управления скриптамиВ мире веб-разработки оптимизация времени загрузки страниц имеет решающее значение. Два мощных атрибута тега
<script> — async и defer — могут существенно повлиять на производительность сайта. Использование этих атрибутов без их глубокого понимания может негативно сказаться на производительности и привести к ошибкам. Давайте начнём с основ и узнаем, что делают эти атрибуты и когда их следует использовать.#html #script #async #defer
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
Знаете ли вы... В Laravel есть класс
Benchmark, позволяющий измерить время выполнения любой задачи#laravel #php #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣2🔥1
Удаление дубликатов — распространённая проблема в программировании, возникающая в различных контекстах, например, при очистке данных или обеспечении уникальности записей. Этот вопрос могут задать на собеседовании, поскольку он довольно прост и может подготовить собеседника к более сложным вопросам.
Рассмотрим два решения задачи: одно для удаления дубликатов из массивов, другое — для удаления дубликатов из строк (хотя они очень похожи).
На самом деле всё довольно просто, хотя если вы новичок в программировании, то, возможно, не знаете, как это сделать.
#JavaScript #js #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2👌1
Хотите протестировать содержимое email в приложении, но не хотите настраивать что-то вроде Mailgun?
Просто используйте параметр
.env MAIL_DRIVER=log, и все email будут сохраняться в файле storage/logs/laravel.log, а не отправляться.#laravel #php #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁2🤣1
useId() вместо вручную созданных IDМы считаем, что следует чаще использовать хук
useId(). Если вы обнаружили, что не используете его, есть большая вероятность, что ваше приложение или сайт либо недоступны (a11y), либо вы создаёте код, склонный к ошибкам. Позвольте объяснить.tl;dr
useId() вместо вручную созданных ID, чтобы связать два узла DOM для обеспечения доступности.#React #Hooks #useId
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1🔥1
dd()При отладке запроса в Eloquent для проверки результата часто используется
dd(). А знаете ли вы, что можно просто подключить его напрямую? #laravel #eloquent #php #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1
Это действительно так, но, будучи разработчиками Laravel, мы можем выполнять параллельные задачи в рамках текущего запроса с помощью нового фасада
Concurrency.Под капотом этот фасад выполняет каждую задачу как отдельный серверный процесс используя консольные команды, что является обходным решением ограничений PHP.
Рекомендую использовать этот фасад только для небольших задач, поскольку он все ещё находится в стадии бета-версии.
Для более сложных случаев использования можно построить приложение так, чтобы использовать
Queue для одновременного выполнения задач.#laravel #concurrency #php #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
Познакомьтесь с новым методом
Cache::flexible() в Laravel, позволяющим сбалансировать свежесть данных и производительность в приложениях с высокой активностью.В Laravel 11 появилась новая функция кэширования, призванная изменить подход к обработке дорогостоящих операций с данными. Новый метод
Cache::flexible() реализует паттерн, позволяющий обслуживать кэшированные данные, обновляя их в фоновом режиме, предлагая разумное решение извечной проблемы баланса между свежестью данных и производительностью приложения. В статье мы рассмотрим эту функцию, начав с основ и постепенно погружаясь в более сложные сценарии использования.#Laravel #Cache
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥1
Это затрудняет выявление проблем, так как они могут появляться случайным образом в процессе работы CI.
В таких случаях я использую метод
repeat(), доступный в PestPHP, позволяющий повторить тест определенное количество раз.После проведения тестирования с достаточным количеством повторений я удаляю вызов repeat().
Такой подход помогает обеспечить стабильность теста на протяжении нескольких итераций...
#laravel #pest #php #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
sole.Он работает так же, как и
first, но выбрасывает исключение, если результат оказался не один. Это очень удобно при работе со сложными Коллекциями! 🔥
#laravel #collection #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5✍2🔥1
Система авторизации Laravel, основанная на политиках, предоставляет мощный способ управления контролем доступа в приложениях. В сочетании с middleware маршрутов она предлагает чистый и эффективный метод обеспечения безопасности маршрутов на основе прав пользователей. Рассмотрим, как реализовать авторизацию маршрутов на основе политик с помощью middleware
can.#laravel #route #policy
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
Вам когда-нибудь требовалось пропустить выполнение задания? Это можно сделать и вручную, но Laravel поставляется с middleware
Skip, делающим именно это #laravel #Jobs #php #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1