TGViewer
Channel Public Channel
Заметки разработчика

Заметки разработчика

@dev_notes_ru

Заметки о Frontend, Backend и немного DevOps. В основном о #PHP, #Laravel, #JavaScript, #HTML, #CSS, тестировании и настройке серверов.

https://www.dev-notes.ru

@snakenf
Subscribers
458
Photos
740
Videos
4
Links
1.2K

Showing posts older than #1365 · Back to latest

Older Posts 20 shown
Post #1364 204
💡 Совет по Laravel: Директива Blade `aware`

Иногда возникает необходимость сделать родительские пропсы доступными для дочерних компонентов. Хотя можно явно переопределить пропсы для дочерних компонентов, Laravel поставляется с директивой aware, позволяющей сделать именно это 🚀.

📱 @dev_notes_ru

#Laravel #Blade #tips
Post #1363 213
👩‍💻 Новое в Symfony 7.2: Опциональный секрет

Symfony 7.2 упрощает настройку приложений, делая секрет опциональным, повышая безопасность и удобство для разработчиков.

Одним из наиболее известных параметров конфигурации Symfony является secret, настраиваемый с помощью параметра framework.secret или переменной APP_SECRET в одном из файлов .env, обрабатываемых Symfony. Независимо от того, как вы его настраиваете, это значение в конечном итоге становится параметром kernel.secret в приложении.

🖥 Читать статью

📱 @dev_notes_ru

#Symfony #Secret
Post #1362 190
💡 Совет по Laravel: Метод `hasHeader`

Вам когда-нибудь было нужно проверить наличие заголовка? Хотя это можно сделать вручную, Laravel поставляется с методом hasHeader, предназначенным именно для этого 🚀.

📱 @dev_notes_ru

#Laravel #Request #tips
  • 👍 2
Post #1361 206
👩‍💻👩‍💻👩‍💻 Переходите на сторону light-dark()

За последние несколько лет интерфейсы с темным режимом сильно изменились. Все мы знаем традиционный подход с использованием медиа-запросов, но в этой статье Sara Joy демонстрирует современные CSS-функции, благодаря которым соблюсти предпочтения пользователя в выборе цветовой схемы становится чертовски просто.

Вас можно простить, если думаете, что кодировать одновременно тёмный и светлый режимы — это очень сложно. Нужно помнить о @media запросах на основе prefers-color-scheme, а также о дополнительных сложностях, возникающих, когда посетители могут выбирать светлый или тёмный режим отдельно от настроек ОС. И давайте не будем забывать о самой цветовой палитре! Переход от светлого режима к тёмному может потребовать новых вариаций, чтобы добиться нужного уровня контрастности для обеспечения доступности.

Это действительно большая работа. Но я хочу сказать, что с современным CSS это стало намного проще!

🖥 Читать статью

📱 @dev_notes_ru

#Frontend #CSS #HTML #JS #ColorScheme #DarkMode #LightMode
  • ❤ 1
  • 👍 1
  • 🔥 1
Post #1360 185
💡 Совет по Laravel: Хелпер `data_forget`

Вам когда-нибудь приходилось удалять данные из вложенных массивов? Это может быстро превратиться в мешанину (и уродство). Laravel поставляется с хелпером data_forget, позволяющим сделать именно это, используя точечную нотацию 🚀.

📱 @dev_notes_ru

#Laravel #Array #tips
Post #1358 192
👩‍💻 Улучшение производительности с делегированием событий

Делегирование событий — техника в веб-разработке, используемая для более эффективного управления событиями. Вместо того чтобы добавлять слушателей событий к каждому элементу, можно прикрепить один слушатель к родительскому элементу, повысив эффективность. Этот родительский элемент затем обрабатывает события для всех дочерних элементов и становится более эффективным, как продемонстрировано в статье.

Представьте веб-страницу с несколькими интерактивными кнопками. Обработка события click для каждой кнопки отдельно может быть громоздкой и неэффективной. Как разработчикам упростить этот процесс и сохранить производительность? Ответ кроется в делегировании событий JavaScript.

Этот метод особенно удобен при работе с динамическим контентом, когда новые элементы появляются после загрузки страницы. Такой подход упрощает код и облегчает управление динамическими изменениями в DOM.

🖥 Читать статью

📱 @dev_notes_ru

#JavaScript #Event
  • 👍 1
  • 🔥 1
Post #1357 180
👩‍💻 Новое в Symfony 7.2: Устаревания

Выход новой минорной версии Symfony — это хорошая возможность отказаться от некоторых функций, чтобы подготовиться к их удалению в следующей основной версии. В Symfony 7.2 мы объявили устаревшими следующие функции, которые будут удалены в Symfony 8.0.

🖥 Читать статью

📱 @dev_notes_ru

#Symfony #Deprication
  • ❤ 2
  • 👍 2
Post #1356 175
💡 Совет по Laravel: Рекурсивная сортировка массивов

Когда-нибудь требовалось рекурсивно отсортировать массив, включая все его вложенные массивы? В Laravel есть метод `sortRecursive, позволяющий сделать именно это 🚀.

📱 @dev_notes_ru

#Laravel #Arr #tips
Post #1355 187
👩‍💻👩‍💻 Различные (и современные) способы переключения контента

Давайте уделим немного времени рассмотрению Dialog API, Popover API и остальных. Рассмотрим, когда лучше использовать каждый из них в зависимости от требований. Модальные или немодальные? JavaScript или чистый HTML/CSS? Не уверены? Не волнуйтесь, мы разберёмся во всём этом.

Легко ориентироваться на то, что знакомо. Когда речь идёт о переключении содержимого, это может быть display: none или opacity: 0 с использованием JavaScript. Но сегодня веб стал более современным, поэтому, возможно, самое время взглянуть на различные способы переключения содержимого с высоты птичьего полёта — какие нативные API поддерживаются сейчас, их плюсы и минусы, а также некоторые вещи, о которых вы могли не знать (например, псевдоэлементы и другие неочевидные вещи).

Итак, давайте потратим некоторое время на рассмотрение раскрытия (<details> и <summary>), Dialog API, Popover API и прочего. Рассмотрим, как правильно использовать каждый из них в зависимости от требований. Модальный или немодальный? JavaScript или чистый HTML/CSS? Не уверены? Не волнуйтесь, мы расскажем обо всём этом.

🖥 Читать статью

📱 @dev_notes_ru

#Frontend #PopoverAPI #DialogAPI
  • 👍 3
  • ❤ 1
  • 🔥 1
Post #1354 194
👩‍💻 Новое в Symfony 7.2: Stateless CSRF

Symfony 7.2 представляет значительное усовершенствование функций безопасности: Stateless CSRF (Cross-Site Request Forgery) защита. Новая функция использующая комбинацию куки и HTTP заголовков для проверки непостоянных токенов.

Основное преимущество этой функции перед традиционными методами CSRF заключается в том, что токены проверяются независимо от сессий на стороне сервера. Это делает её подходящей для приложений, использующих HTTP-кэширование. Кроме того, отсутствие зависимости от сеансов гарантирует, что пользователи не потеряют свои данные, если потратят определённое время на отправку формы. Например, если во время заполнения формы сессия пользователя будет уничтожена, функция "Запомнить меня" подключит его заново, и отправка формы будет принята.

🖥 Читать статью

📱 @dev_notes_ru

#Symfony #CSRF #Security
  • ❤ 2
  • 👍 1
Post #1353 179
💡 Совет по Laravel: Генерация фейковых данных кредитной карты

Поскольку Laravel использует FakerPHP для генерации фейковых данных, можно использовать метод creditCardDetails для генерации фейковых кредитных карт для тестов 🚀.

📱 @dev_notes_ru

#Laravel #FakerPHP #tips
Post #1352 197
👩‍💻 Новое в Symfony 7.2: Улучшения Serializer

В Symfony 7.2 в Serializer добавлена поддержка подклассов DateTime, новый конвертер имён SnakeCaseToCamelCase, обновлённые константы UUID и опциональная интеграция Webhook

🖥 Читать статью

📱 @dev_notes_ru

#Symfony #Serializer
  • ❤ 2
  • 👍 1
Post #1351 195
💡 Совет по Laravel: Правило валидации `sometimes`

Вам когда-нибудь требовалось проверить поле только в том случае, если оно присутствует, и пропустить его, когда его нет? Laravel поставляется с правилом валидации `sometimes, позволяющим сделать именно это 🚀.

📱 @dev_notes_ru

#Laravel #Validation #tips
Post #1350 197
👩‍💻 PHP 8.4: Curl: Новая опция CURLOPT_DEBUGFUNCTION

Curl предоставляет опцию CURLOPT_DEBUGFUNCTION для установки пользовательской функции обратного вызова, вызываемой вместо стандартной функции вывода сообщений.

Когда выполняется запрос Curl, настройка подробного вывода выводит дополнительную отладочную информацию в течение всего времени выполнения запроса, что может быть удобно для отладки неудачных запросов Curl или для ведения лога запросов Curl.

Curl также предоставляет опцию CURLOPT_DEBUGFUNCTION для установки пользовательской функции обратного вызова, вызываемой вместо стандартной функции вывода сообщений. Когда приложению требуется больше контроля над обработкой подробной отладочной информации, эта опция может быть полезна.

Расширение PHP 8.4 Curl предоставляет эту опцию libcurl как опцию CURLOPT_DEBUGFUNCTION (для curl_setopt), принимающую значение PHP callable.

Обратный вызов вызывается несколько раз во время запроса Curl, и обратный вызов может решить, что делать с этой информацией.

🖥 Читать статью

📱 @dev_notes_ru

#PHP #PHP84 #Curl #features
Post #1348 173
💡 Совет по Laravel: Агрегатные функции (функции агрегации)

Мы часто используем withCount при работе с отношениями, но вы знали, что другие агрегатные функции доступны из коробки? Например, можно также использовать функции sum, min и max 🚀.

📱 @dev_notes_ru

#Laravel #DB #tips
Post #1347 167
👩‍💻 PHP 8.4: Curl: Новая опция CURLOPT_TCP_KEEPCNT

Расширение PHP 8.4 Curl представляет новую опцию Curl с названием CURLOPT_TCP_KEEPCNT, устанавливающую максимальное количество запросов TCP keep-alive.

По умолчанию значение опции равно 9, но с помощью CURLOPT_TCP_KEEPCNT можно увеличить или уменьшить максимальное количество зондов keep-alive.

Опция принимает любое значение int, равное 0 или выше. Попытка установить недопустимое значение приводит к тому, что вызов curl_setopt возвращает false.

🖥 Читать статью

📱 @dev_notes_ru

#PHP #PHP84 #Curl #features
Post #1346 196
👩‍💻 PHP 8.4: Curl: Новая опция CURLOPT_PREREQFUNCTION

Расширение Curl в PHP 8.4 представляет новую опцию CURLOPT_PREREQFUNCTION, позволяющую задать пользовательский callable для принятия решения о продолжении или прерывании запроса. Эта возможность доступна, если расширение собрано с libcurl 7.80.0 или более поздней версии.

Обратный вызов CURLOPT_PREREQFUNCTION вызывается после установления начального соединения и перед отправкой запроса. Например, при запросе HTTPS обратный вызов CURLOPT_PREREQFUNCTION вызывается после установления HTTPS-соединения (DNS + TCP + TLS), перед отправкой фактического HTTP-запроса.

Этот обратный вызов может быть удобен в ситуациях, когда приложению необходимо определить, следует ли обрабатывать соединение в зависимости от IP-адреса и порта источника и получателя.

🖥 Читать статью

📱 @dev_notes_ru

#PHP #PHP84 #Curl #features
Post #1345 299
JavaScript расист

📱 @dev_notes_ru

#joke #js #JavaScript
  • 🔥 3
  • 🤣 2
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →