#полезное
😊 Подборка 5 полезных шпаргалок по верстке и гиту
Сохраняй, чтобы не потерять
👉 Новости 👉 База вопросов
Сохраняй, чтобы не потерять
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Как использовать РНР с функциями HTML5?
PHP используется для динамического генерирования HTML5 контента, включая создание мультимедийных элементов, работу с localStorage, и обработку форм. PHP может генерировать HTML5 элементы, такие как формы, видео или аудио теги, и передавать данные в JavaScript для работы с новыми функциями HTML5, такими как местное хранилище.
👉 Новости 👉 База вопросов
PHP используется для динамического генерирования HTML5 контента, включая создание мультимедийных элементов, работу с localStorage, и обработку форм. PHP может генерировать HTML5 элементы, такие как формы, видео или аудио теги, и передавать данные в JavaScript для работы с новыми функциями HTML5, такими как местное хранилище.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤓 что если вы хотите сделать continue в нескольких foreach-циклах?
Сначала я попробовал
👉 Новости 👉 База вопросов
Сначала я попробовал
continue; continue;
, что (очевидно) не сработало — потом узнал, что в PHP можно передать число как {level}
, указав, сколько уровней вложенности нужно пропустить.Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😴 Ищете API-клиенты, альтернативы Postman?
Вот три инструмента, которые особенно нравятся разработчикам:
🟠 HTTPie — подсветка синтаксиса и удобное переключение между CLI и GUI
🟠 Yaak — организация рабочих пространств и низкое потребление памяти
🟠 Insomnia — поддержка GraphQL и чистый интерфейс
👉 Новости 👉 База вопросов
Вот три инструмента, которые особенно нравятся разработчикам:
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🛞 Метод «skip» у планировщика
Иногда вы можете захотеть пропустить выполнение команды, основываясь на определенном условии. Laravel включает метод «
👉 Новости 👉 База вопросов
Иногда вы можете захотеть пропустить выполнение команды, основываясь на определенном условии. Laravel включает метод «
skip
» для выполнения этого Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
📞 В Laravel появилась новая функция — мемоизация кэша
Теперь с помощью метода
Это позволяет временно сохранять значения, извлечённые из кэша, прямо в памяти во время одного запроса или выполнения задания. В результате — никаких повторных обращений к кэшу в рамках одного выполнения.
Подробнее в документации
👉 Новости 👉 База вопросов
Теперь с помощью метода
Cache::memo
можно обернуть любое хранилище кэша в обёртку с мемоизацией. Это позволяет временно сохранять значения, извлечённые из кэша, прямо в памяти во время одного запроса или выполнения задания. В результате — никаких повторных обращений к кэшу в рамках одного выполнения.
Подробнее в документации
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Как РНР взаимодействует с JavaScript?
PHP взаимодействует с JavaScript, генерируя JavaScript-код, который затем выполняется на клиентской стороне. РНР может передавать данные в vaScript через HTML или создавать асинхронные запросы с помощью AJAX, позволяя динамично обновлять страницы без перезагрузки.
👉 Новости 👉 База вопросов
PHP взаимодействует с JavaScript, генерируя JavaScript-код, который затем выполняется на клиентской стороне. РНР может передавать данные в vaScript через HTML или создавать асинхронные запросы с помощью AJAX, позволяя динамично обновлять страницы без перезагрузки.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😊 Выпущена документация для нового fluent-класса URI в Laravel, который значительно упрощает анализ и манипулирование URI.
Теперь можно даже возвращать экземпляры этого класса из маршрутов, чтобы автоматически генерировать ответы с перенаправлением на указанный адрес.
Документация Laravel 12.x – URI
👉 Новости 👉 База вопросов
Теперь можно даже возвращать экземпляры этого класса из маршрутов, чтобы автоматически генерировать ответы с перенаправлением на указанный адрес.
Документация Laravel 12.x – URI
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЛитКод
Задача: 711. Number of Distinct Islands II
Вам дана двоичная матричная сетка m x n. Остров - это группа 1 (представляющая сушу), соединенных в четырех направлениях (горизонтальном или вертикальном). Можно предположить, что все четыре края сетки окружены водой. Остров считается одинаковым с другим, если они имеют одинаковую форму, или имеют одинаковую форму после поворота (только на 90, 180 или 270 градусов) или отражения (влево/вправо или вверх/вниз). Верните количество разных островов.
Пример:
👨💻 Алгоритм:
1⃣ Пройдите по каждому элементу матрицы, если найдена земля (1), выполните DFS для обнаружения всех связанных с этим островом земель и сохраните форму острова.
2⃣ Нормализуйте форму острова, применив все возможные повороты и отражения, чтобы найти каноническую форму.
3⃣ Используйте множество для хранения всех уникальных канонических форм и верните размер этого множества.
😎 Решение:
👉 Новости 👉 База вопросов
Задача: 711. Number of Distinct Islands II
Вам дана двоичная матричная сетка m x n. Остров - это группа 1 (представляющая сушу), соединенных в четырех направлениях (горизонтальном или вертикальном). Можно предположить, что все четыре края сетки окружены водой. Остров считается одинаковым с другим, если они имеют одинаковую форму, или имеют одинаковую форму после поворота (только на 90, 180 или 270 градусов) или отражения (влево/вправо или вверх/вниз). Верните количество разных островов.
Пример:
Input: grid = [[1,1,0,0,0],[1,0,0,0,0],[0,0,0,0,1],[0,0,0,1,1]]
Output: 1
function numDistinctIslands2($grid) {
$uniqueIslands = [];
for ($i = 0; $i < count($grid); $i++) {
for ($j = 0; $j < count($grid[0]); $j++) {
if ($grid[$i][$j] == 1) {
$shape = [];
dfs($grid, $i, $j, $i, $j, $shape);
$uniqueIslands[normalize($shape)] = true;
}
}
}
return count($uniqueIslands);
}
function dfs(&$grid, $i, $j, $baseI, $baseJ, &$shape) {
if ($i < 0 || $i >= count($grid) || $j < 0д
Задача
:
711. Number of Di$grid[$i][$j]
== 0) {
return;
}
$grid[$i][$j] = 0;
$shape[] = [$i - $baseI, $j - $baseJ];
dfs($grid, $i + 1, $j, $baseI, $baseJ, $shape);
dfs($grid, $i - 1, $j, $baseI, $baseJ, $shape);
dfs($grid, $i, $j + 1, $baseI, $baseJ, $shape);
dfs($grid, $i, $j - 1, $baseI, $baseJ, $shape);
}
function normalize($shape) {
$shapes = array_fill(0, 8, []);
foreach ($shape as $p) {
$x = $p[0];
$y = $p[1];
$shapes[0][] = [$x, $y];
$shapes[1][] = [$x, -$y];
$shapes[2][] = [-$x, $y];
$shapes[3][] = [-$x, -$y];
$shapes[4][] = [$y, $x];
$shapes[5][] = [$y, -$x];
$shapes[6][] = [-$y, $x];
$shapes[7][] = [-$y, -$x];
}
foreach ($shapes as &$s) {
sort($s);
}
$minShape = implode(",", array_map(function($p) { return implode(",", $p); }, $shapes[0]));
foreach ($shapes as $s) {
$sStr = implode(";", array_map(function($p) { return implode(",", $p); }, $s));
$minShape = min($minShape, $sStr);
}
return $minShape;
}
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Как реализовать AJAX в РНР?
AJAX в PHP реализуется с помощью JavaScript, который отправляет асинхронные запросы на сервер через объект XMLHttpRequest . На сервере PHP-скрипт обрабатывает запрос, выполняя необходимые операции (например, доступ к базе данных), и отправляет ответ в формате JSON или XML. Затем JavaScript обрабатывает этот ответ и обновляет веб-страницу без перезагрузки.
👉 Новости 👉 База вопросов
AJAX в PHP реализуется с помощью JavaScript, который отправляет асинхронные запросы на сервер через объект XMLHttpRequest . На сервере PHP-скрипт обрабатывает запрос, выполняя необходимые операции (например, доступ к базе данных), и отправляет ответ в формате JSON или XML. Затем JavaScript обрабатывает этот ответ и обновляет веб-страницу без перезагрузки.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
В Laravel появилась новая функция — мемоизация кэша
Теперь с помощью метода
Это позволяет временно сохранять значения, извлечённые из кэша, прямо в памяти во время одного запроса или выполнения задания. В результате — никаких повторных обращений к кэшу в рамках одного выполнения.
Подробнее в документации
👉 Новости 👉 База вопросов
В Laravel появилась новая функция — мемоизация кэша
Теперь с помощью метода
Cache::memo
можно обернуть любое хранилище кэша в обёртку с мемоизацией. Это позволяет временно сохранять значения, извлечённые из кэша, прямо в памяти во время одного запроса или выполнения задания. В результате — никаких повторных обращений к кэшу в рамках одного выполнения.
Подробнее в документации
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤯 Вы когда-нибудь сталкивались с проблемами или головной болью при попытке поддерживать документацию API в актуальном состоянии во время разработки?
Не переживайте — позвольте представить Scramble — генератор документации OpenAPI (Swagger) для Laravel.
Этот пакет после установки автоматически генерирует документацию для ваших API, анализируя ваш код.
Он работает лучше всего, когда вы используете классы Form Request и API Resources в своих API.
Этот пакет умеет очень многое
Вот несколько базовых шагов для установки пакета и запуска документации:
👉 Новости 👉 База вопросов
Не переживайте — позвольте представить Scramble — генератор документации OpenAPI (Swagger) для Laravel.
Этот пакет после установки автоматически генерирует документацию для ваших API, анализируя ваш код.
Он работает лучше всего, когда вы используете классы Form Request и API Resources в своих API.
Этот пакет умеет очень многое
Вот несколько базовых шагов для установки пакета и запуска документации:
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🛞 CLI-лайфхак для PHP-разработчиков: Быстрое выполнение одноразовых команд с помощью опции -r
Полезная команда, которая позволяет выполнять небольшие фрагменты PHP-кода прямо из командной строки без создания отдельных файлов. Это особенно удобно для быстрого тестирования идей или выполнения одноразовых задач
Как это сделать?
1⃣ Откройте терминал на вашем компьютере.
2⃣ Введите следующую команду, заменив код внутри одинарных кавычек на нужный вам PHP-код:
Почему это удобно?
🟠 Быстрота: нет необходимости создавать отдельный файл для выполнения небольшого фрагмента кода.
🟠 Удобство: идеальный способ для тестирования небольших функций или выражений.
🟠 Гибкость: позволяет комбинировать PHP с другими командными инструментами для автоматизации задач.
Обратите внимание:
Экранирование кавычек: при использовании одинарных кавычек внутри PHP-кода их необходимо экранировать обратным слэшем (\'), чтобы избежать конфликтов с внешними кавычками.
👉 Новости 👉 База вопросов
Полезная команда, которая позволяет выполнять небольшие фрагменты PHP-кода прямо из командной строки без создания отдельных файлов. Это особенно удобно для быстрого тестирования идей или выполнения одноразовых задач
Как это сделать?
php -r 'echo «Привет, мир!\n»;'
Почему это удобно?
Обратите внимание:
Экранирование кавычек: при использовании одинарных кавычек внутри PHP-кода их необходимо экранировать обратным слэшем (\'), чтобы избежать конфликтов с внешними кавычками.
php -r 'echo \'Это строка с одинарными кавычками.\' . «\n»;'
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Как написать юнит-тесты в РНР?
В РНР юнит-тесты пишутся с использованием PHPUnit, который позволяет проверять корректность работы кода. Для создания тестов необходимо создать класс с методами, проверяющими функциональность программы, и использовать различные утверждения для проверки результатов. PHPUnit поддерживает создание фиктивных объектов и наборов данных для тестирования различных сценариев.
👉 Новости 👉 База вопросов
В РНР юнит-тесты пишутся с использованием PHPUnit, который позволяет проверять корректность работы кода. Для создания тестов необходимо создать класс с методами, проверяющими функциональность программы, и использовать различные утверждения для проверки результатов. PHPUnit поддерживает создание фиктивных объектов и наборов данных для тестирования различных сценариев.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😬 Совет по Laravel
Когда вы развёртываете изменения, пользователи могут столкнуться с недоступностью сайта.
Вы можете отобразить общую страницу «обслуживания», запустив команду
Также флаг
Наконец, вы можете кастомизировать страницу обслуживания, определив свой шаблон в
Подробнее в документации
👉 Новости 👉 База вопросов
Когда вы развёртываете изменения, пользователи могут столкнуться с недоступностью сайта.
Вы можете отобразить общую страницу «обслуживания», запустив команду
php artisan down
перед деплоем и php artisan up
после него.Также флаг
--refresh=15
будет автоматически обновлять эту страницу каждые 15 секунд, чтобы проверить, остаётся ли сайт в режиме обслуживания. Если нет — будет отображена обычная страница проекта.Наконец, вы можете кастомизировать страницу обслуживания, определив свой шаблон в
resources/views/errors/503.blade.php
.Подробнее в документации
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🛞 Новое в Laravel 12: больше не нужно вызывать
Вместо этого используйте новые методы
Теперь Laravel автоматически определяет соответствующие классы ресурсов
Ссылка на документацию
👉 Новости 👉 База вопросов
new Resource()
или Resource::collection()
.Вместо этого используйте новые методы
toResource()
и toResourceCollection()
.Теперь Laravel автоматически определяет соответствующие классы ресурсов
Ссылка на документацию
Please open Telegram to view this post
VIEW IN TELEGRAM