<?php
// Получение данных из тела запроса
function getFormData($method) {
// GET или POST: данные возвращаем как есть
if ($method === 'GET') return $_GET;
if ($method === 'POST') return $_POST;
// PUT, PATCH или DELETE
$data = array();
$exploded = explode('&', file_get_contents('php://input'));
foreach($exploded as $pair) {
$item = explode('=', $pair);
if (count($item) == 2) {
$data[urldecode($item[0])] = urldecode($item[1]);
}
}
return $data;
}
CSS: Как создать и использовать CSS-переменную?
:root {
--main-bg-color: brown;
}
.one {
background-color: var(--main-bg-color);
}
PHP: Сохранить JSON в файл
<?php
$fp = fopen('results.json', 'w');
fwrite($fp, json_encode($response, JSON_UNESCAPED_UNICODE));
fclose($fp);
// or file_put_contents('results.json', json_encode($response, JSON_UNESCAPED_UNICODE))
Python: Получение ссылки на превью видео Youtube
# Each YouTube video has four generated images. They are predictably formatted as follows:
f"https://img.youtube.com/vi/{your_youtube_video_id}/0.jpg"
f"https://img.youtube.com/vi/{your_youtube_video_id}/1.jpg"
f"https://img.youtube.com/vi/{your_youtube_video_id}/2.jpg"
f"https://img.youtube.com/vi/{your_youtube_video_id}/3.jpg"
# The first one in the list is a full size image and others are thumbnail images. The default thumbnail image (i.e., one of 1.jpg, 2.jpg, 3.jpg) is:
f"https://img.youtube.com/vi/{your_youtube_video_id}/default.jpg"
# For the high quality version of the thumbnail use a URL similar to this:
f"https://img.youtube.com/vi/{your_youtube_video_id}/hqdefault.jpg"
# There is also a medium quality version of the thumbnail, using a URL similar to the HQ:
f"https://img.youtube.com/vi/{your_youtube_video_id}/mqdefault.jpg"
# For the standard definition version of the thumbnail, use a URL similar to this:
f"https://img.youtube.com/vi/{your_youtube_video_id}/sddefault.jpg"
# For the maximum resolution version of the thumbnail use a URL similar to this:
f"https://img.youtube.com/vi/{your_youtube_video_id}/maxresdefault.jpg"
# All of the above URLs are available over HTTP too. Additionally, the slightly shorter hostname i3.ytimg.com works in place of img.youtube.com in the example URLs above.
# Alternatively, you can use the YouTube Data API (v3) to get thumbnail images.
Python: Получение промежуточного цвета
newcolor.H = (color1.H + color2.H) / 2
newcolor.S = (color1.S + color2.S) / 2
newcolor.V = (color1.V + color2.V) / 2
React: Состояние компонента и useState
С помощью хука useState
можно создать локальное состояние внутри функционального компонента.
React: Побочные эффекты и хук useEffect
Хук useEffect
позволяет выполнять из функционального компонента действия, которые вызывают побочные эффекты, например, получение данных с сервера, установка слушателей событий или взаимодействие с DOM-деревом.
React: Контекст и хук useContext
В React существует проблема передачи свойств целевым компонентам. Обычно мы поднимаем данные по дереву компонентов, чтобы хранить их в одном месте. Но затем их приходится спускать вниз по цепочке пропсов для вывода на страницу. Иногда несколько уровней компонентов просто передают вниз ненужные им данные. чтобы они достигли цели.
React: Мемоизация и хук useMemo
Хук useMemo
очень похож на useCallback
и также используется для повышения производительности. Разница заключается в том, что вместо функций-коллбэков useMemo
запоминает результаты дорогостоящих вычислений.
React: Производительность и хук useCallback
Хук useCallback
используется для улучшения производительности компонентов за счет мемоизации функций обратного вызова.