WebCraft - ремесло веб разработки
6.45K subscribers
1.71K photos
258 videos
2 files
230 links
Интересуешься php , js , css , html , Laravel , Vue ? Этот канал для тебя

Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront
Менеджер по рекламе: @Spiral_Yuri

Купить рекламу: https://telega.in/c/web_craft
Download Telegram
Форматирование чисел в JavaScript

Intl.NumberFormat — это инструмент для локализации и форматирования чисел, который поддерживает различные стили отображения, включая валюты, единицы измерения и проценты.

Для валюты можно указать, отображать ли символ, код или полное название валюты. Например, форматирование валюты в стиле немецкой локализации:

const numberFormatter = new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' });
console.log(numberFormatter.format(123456.789)); // Выводит "123.456,79 €"


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

const unitFormatter = new Intl.NumberFormat('en-US', { style: 'unit', unit: 'kilometer', unitDisplay: 'long' });
console.log(unitFormatter.format(5.5)); // Выводит "5.5 kilometers"


👉 @web_craft | #frontend
Финализация классов

В статье говорится об автоматизации процесса финализации классов в PHP. В ней обсуждаются преимущества финализации классов для статического анализа и правил Rector. В статье также подробно описан инструмент под названием Swiss Knife, который можно использовать для безопасной финализации классов в проекте.

👉 @web_craft | #php
18 советов по созданию чистого и эффективного кода JavaScript

В этой статье представлены советы по написанию чистого и эффективного кода JavaScript. В ней обсуждается использование стрелочных функций, метода Array.from() и console.table() для улучшения организации кода. Другие важные моменты включают использование const и let соответствующим образом, деструктуризацию для извлечения свойств объекта и установку значений по умолчанию с помощью логического оператора ИЛИ.

👉 @web_craft | #frontend
Когда твоя способность усложнять вещи достигает новых высот... или глубин.

👍 - Определенно высот.

🤔 - Или.

👉 @web_craft | #юмор
Эпидемия многоступенчатых собеседований

Статья о распространение многоступенчатых собеседований в крупных компаниях. Автор критикует эту практику за её длительность и потенциальную стратегию снижения заработной платы кандидатам после их успешного прохождения всех этапов.

А что думаете вы?

👍 - Не буду рассматривать компанию с таким подходом.

🤔 - Мне все равно, главное устроиться.

👉 @web_craft | #собес
Работа pcntl_async_signals в PHP

Что делает функция pcntl_async_signals(true) в PHP?

Если забыли, то вернитесь к посту от 13.05.2024.

👉 @web_craft | #php
Аргументы Intl.RelativeTimeFormat

Какие аргументы принимает конструктор Intl.RelativeTimeFormat?

Если забыли, то вернитесь к посту от 13.05.2024.

👉 @web_craft | #frontend
Защита чувствительных данных в PHP

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

Как работает sensitive_parameter:
При использовании этого атрибута, PHP скрывает значение параметра в сообщениях об ошибках и логах, заменяя его на ***. Это помогает предотвратить утечки конфиденциальной информации, такой как пароли или токены.

Пример использования:
class UserAuthenticator {
public function authenticate(
#[\SensitiveParameter] string $password
) {
// Логика аутентификации
if ($password !== 'secret') {
throw new \Exception("Authentication failed");
}
}
}

try {
(new UserAuthenticator())->authenticate('wrong_password');
} catch (\Exception $e) {
error_log($e->getMessage());
error_log($e->getTraceAsString());
}


В этом примере, если аутентификация не удастся, в логе вместо фактического значения пароля будет отображено ***.

👉 @web_craft | #php
Асинхронные операции в JavaScript

top-level await позволяет использовать оператор await на верхнем уровне модулей, без необходимости оборачивать его в асинхронную функцию. Это упрощает работу с асинхронным кодом и улучшает читаемость скриптов.

Как работает top-level await:
Ранее для использования await необходимо было объявлять асинхронную функцию:

async function fetchData() {
const response = await fetch('https://api.example.com/data');
const data = await response.json();
console.log(data);
}
fetchData();


Теперь с top-level await можно писать асинхронный код прямо в модуле:

const response = await fetch('https://api.example.com/data');
const data = await response.json();
console.log(data);


👉 @web_craft | #frontend
Слишком точное описание.

👉 @web_craft | #юмор
Создание докер-образов PHP с помощью Wolfi-OS

Статья об улучшении создания Docker-образов для PHP с использованием Wolfi-OS. В ней сравниваются традиционные методы с использованием официального образа Docker для PHP и установкой расширений вручную, с подходом, который использует Wolfi-OS. Это позволяет ускорить процесс сборки, обеспечивает большую безопасность и предлагает сборки с предварительно скомпилированными пакетами. Wolfi-OS предназначен специально для контейнеров, поддерживает создание образов для разных архитектур и имеет улучшенную систему управления пакетами.

👉 @web_craft | #php
Media is too big
VIEW IN TELEGRAM
WebGL Ghost Cursor (2023 update)

Интерактивный курсор с настраиваемым приведением на CSS и JavaScript.

👉 @web_craft | #frontend
Боимся?

🤔 - Нет, я фронтенд.

👍 - Я фулстек, поэтому боюсь всего.

👉 @web_craft | #юмор
This media is not supported in your browser
VIEW IN TELEGRAM
Adjustable Text Emphasis with CSS lh unit

Регулируемый текстовый блок на CSS.

👉 @web_craft | #frontend
Работа с сигналами в PHP

Какая функция позволяет скрипту прерываться и немедленно обрабатывать сигналы в любом месте выполнения?

Если забыли, то вернитесь к посту от 20.05.2024.

👉 @web_craft | #php
Какая функция позволяет скрипту прерываться и немедленно обрабатывать сигналы в любом месте выполнения?
Anonymous Quiz
7%
pcntl_fork;
33%
pcntl_signal;
54%
pcntl_async_signals;
7%
pcntl_wait.