Когда твоя способность усложнять вещи достигает новых высот... или глубин.
👍 - Определенно высот.
🤔 - Или.
👉 @web_craft | #юмор
👍 - Определенно высот.
🤔 - Или.
👉 @web_craft | #юмор
Эпидемия многоступенчатых собеседований
Статья о распространение многоступенчатых собеседований в крупных компаниях. Автор критикует эту практику за её длительность и потенциальную стратегию снижения заработной платы кандидатам после их успешного прохождения всех этапов.
А что думаете вы?
👍 - Не буду рассматривать компанию с таким подходом.
🤔 - Мне все равно, главное устроиться.
👉 @web_craft | #собес
Статья о распространение многоступенчатых собеседований в крупных компаниях. Автор критикует эту практику за её длительность и потенциальную стратегию снижения заработной платы кандидатам после их успешного прохождения всех этапов.
А что думаете вы?
👍 - Не буду рассматривать компанию с таким подходом.
🤔 - Мне все равно, главное устроиться.
👉 @web_craft | #собес
Работа pcntl_async_signals в PHP
Что делает функция
Если забыли, то вернитесь к посту от13.05.2024 .
👉 @web_craft | #php
Что делает функция
pcntl_async_signals(true)
в PHP?Если забыли, то вернитесь к посту от
👉 @web_craft | #php
Что делает функция pcntl_async_signals(true) в PHP?
Anonymous Quiz
9%
Отправляет сигналы другим процессам.
7%
Создаёт новые сигналы для системы.
83%
Включает асинхронную обработку сигналов.
1%
Перехватывает ошибки и исключения в коде.
Аргументы Intl.RelativeTimeFormat
Какие аргументы принимает конструктор
Если забыли, то вернитесь к посту от13.05.2024 .
👉 @web_craft | #frontend
Какие аргументы принимает конструктор
Intl.RelativeTimeFormat
?Если забыли, то вернитесь к посту от
👉 @web_craft | #frontend
Какие аргументы принимает Intl.RelativeTimeFormat?
Anonymous Quiz
7%
Только опции стиля.
26%
Локаль и опции.
13%
Только локаль.
54%
Локаль и формат даты.
Защита чувствительных данных в PHP
Как работает
При использовании этого атрибута, PHP скрывает значение параметра в сообщениях об ошибках и логах, заменяя его на
Пример использования:
В этом примере, если аутентификация не удастся, в логе вместо фактического значения пароля будет отображено
👉 @web_craft | #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
Как работает
Ранее для использования
Теперь с
👉 @web_craft | #frontend
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
Создание докер-образов PHP с помощью Wolfi-OS
Статья об улучшении создания Docker-образов для PHP с использованием Wolfi-OS. В ней сравниваются традиционные методы с использованием официального образа Docker для PHP и установкой расширений вручную, с подходом, который использует Wolfi-OS. Это позволяет ускорить процесс сборки, обеспечивает большую безопасность и предлагает сборки с предварительно скомпилированными пакетами. Wolfi-OS предназначен специально для контейнеров, поддерживает создание образов для разных архитектур и имеет улучшенную систему управления пакетами.
👉 @web_craft | #php
Статья об улучшении создания 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
Интерактивный курсор с настраиваемым приведением на CSS и JavaScript.
👉 @web_craft | #frontend
This media is not supported in your browser
VIEW IN TELEGRAM
Adjustable Text Emphasis with CSS lh unit
Регулируемый текстовый блок на CSS.
👉 @web_craft | #frontend
Регулируемый текстовый блок на CSS.
👉 @web_craft | #frontend
Работа с сигналами в PHP
Какая функция позволяет скрипту прерываться и немедленно обрабатывать сигналы в любом месте выполнения?
Если забыли, то вернитесь к посту от20.05.2024 .
👉 @web_craft | #php
Какая функция позволяет скрипту прерываться и немедленно обрабатывать сигналы в любом месте выполнения?
Если забыли, то вернитесь к посту от
👉 @web_craft | #php
Какая функция позволяет скрипту прерываться и немедленно обрабатывать сигналы в любом месте выполнения?
Anonymous Quiz
7%
pcntl_fork;
33%
pcntl_signal;
54%
pcntl_async_signals;
7%
pcntl_wait.
Варианты данных для отправки через navigator.sendBeacon()
Что можно передать в качестве данных в метод
Если забыли, то вернитесь к посту от21.05.2024 .
👉 @web_craft | #frontend
Что можно передать в качестве данных в метод
navigator.sendBeacon()
?Если забыли, то вернитесь к посту от
👉 @web_craft | #frontend
Что можно передать в качестве данных в метод navigator.sendBeacon()?
Anonymous Quiz
14%
Только строки.
30%
Только объекты JSON.
14%
Только Blob.
42%
Строки, Blob, FormData или ReadableStream.
Получение всех переменных в текущей области видимости PHP
Функция
Пример использования:
Результат:
👉 @web_craft | #php
Функция
get_defined_vars()
в PHP возвращает ассоциативный массив всех определенных переменных в текущей области видимости. Ключи массива – это имена переменных, а значения – их содержимое. Функция возвращает как пользовательские переменные, так и суперглобальные массивы (например, $_GET
, $_POST
, $_SERVER
).Пример использования:
$name = "Alice";
$age = 30;
$all_vars = get_defined_vars();
print_r($all_vars);
Результат:
Array
(
[name] => Alice
[age] => 30
[_GET] => Array
(
)
[_POST] => Array
(
)
[_COOKIE] => Array
(
)
[_FILES] => Array
(
)
[GLOBALS] => Array
*RECURSION*
)
👉 @web_craft | #php
Проверка фокуса на элементе
Пример:
В этом примере с помощью
👉 @web_craft | #frontend
document.activeElement
— это свойство в JavaScript, которое позволяет определить текущий сфокусированный элемент в документе. Его использование позволяет узнать, находится ли определенный элемент в фокусе. Это свойство возвращает элемент, который в данный момент имеет фокус, или null
, если ни один элемент не сфокусирован. Важно отметить, что document.activeElement
доступно только для чтения, что означает, что нельзя напрямую изменить его значение.Пример:
let el = document.querySelector('.btn-white');
let isFocus = el === document.activeElement;
console.log(isFocus); // true/false
В этом примере с помощью
document.querySelector
выбирается элемент с классом .btn-white
. Затем, переменная isFocus
устанавливается в true
, если выбранный элемент el
совпадает с текущим сфокусированным элементом document.activeElement
, и в false
в противном случае. Это позволяет легко определить, сфокусирован ли данный элемент в текущий момент.👉 @web_craft | #frontend
Создание сервиса для обмена файлами без головной боли.
Статья описывает, как создать сервис для обмена файлами, используя Fly.io и Tigris1. Автор статьи рассказывает о проблемах, связанных с обменом больших файлов между пользователями в разных частях мира, и предлагает решение этой проблемы с помощью глобального хранилища объектов и вычислительных ресурсов, предоставляемых Fly.io и Tigris1.
👉 @web_craft | #frontend
Статья описывает, как создать сервис для обмена файлами, используя Fly.io и Tigris1. Автор статьи рассказывает о проблемах, связанных с обменом больших файлов между пользователями в разных частях мира, и предлагает решение этой проблемы с помощью глобального хранилища объектов и вычислительных ресурсов, предоставляемых Fly.io и Tigris1.
👉 @web_craft | #frontend