Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter
10.5K subscribers
1.76K photos
31 videos
29 files
4.58K links
Все самое полезное для пхпшника в одном канале.

По рекламе: @tproger_sales_bot

Учиться у нас: clc.to/M561SQ

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5d13cd6fa92100ee6f68b
Download Telegram
👍 5 способов встроить AI в Laravel

Laravel AI SDK позволяет добавлять AI-функции прямо в приложение — без отдельного Python-сервиса и ручной работы с API.

В гайде разобраны практические сценарии:

— автоматический разбор и приоритизация тикетов;
— AI-ассистент с доступом к данным через tools;
— семантический поиск и RAG;
— действия с обязательным подтверждением человека;
— транскрибация голосовых сообщений.


Отдельно показано, как работать со structured output, очередями, фейками для тестов и fallback между провайдерами.

🔗 Доступно по ссылке

🐸 Библиотека пхпшника
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6
🌞 PHP умеет искать в массиве без foreach

В PHP 8.4 появились array_find(), array_find_key(), array_any() и array_all().

Вместо:


foreach ($users as $user) {
if ($user->isAdmin()) {
$admin = $user;
break;
}
}


можно написать:


$admin = array_find($users, fn($user) => $user->isAdmin());


Мелочь, но код сразу читается как то, что именно мы хотим найти, а не как инструкция для обхода массива.

🐸 Библиотека пхпшника
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥26👏3🤔2👾2❤1
🤔 Что выведет код?

❤️ — 1
🔥 — 2
👍 — 12
👾 — Fatal error

👇 Правильный ответ (нажми, чтобы прочитать):

🔥 2 — finally выполняется даже после return из try.

Причём return внутри finally перезаписывает результат, который должен был вернуть try.

⚠️ Ловушка на собесе: если убрать return 2 из finally, функция вернёт 1.


🐸 Библиотека пхпшника
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥39❤13👍6🤔4
🔐 ramsey/uuid — UUID без самописного кода

Библиотека помогает генерировать, парсить и валидировать UUID, а также работать с ними как с объектами.


use Ramsey\Uuid\Uuid;

$id = Uuid::uuid4();

echo $id->toString();


Подходит, когда UUID активно используются в проекте и хочется вынести всю работу с ними в готовый инструмент.

🔗 GitHub

🐸 Библиотека пхпшника
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🌚4❤1🔥1
💡 Laravel-фича, которая спасает тесты от случайных запросов

Http::preventStrayRequests() запрещает тестам обращаться к реальным API.

Например:


Http::preventStrayRequests();

Http::fake([
'example.com/*' => Http::response('ok'),
]);

Http::get('https://example.com/users'); // ✅ ok
Http::get('https://proglib.io'); // ❌ исключение


Так тесты не зависят от доступности внешних сервисов и не отправляют неожиданные запросы в CI.

➡️ Особенно полезно, когда локально всё проходит, а в CI внезапно находится запрос, который забыли замокать.

🐸 Библиотека пхпшника
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍2🔥1
🔥 Последний день для разработчиков

AI уже пишет код. Теперь важнее научиться встраивать его в разработку так, чтобы он действительно экономил время.

На курсе «ИИ для разработчиков» собираете AI-workflow на своём проекте: от задачи и планирования до тестов, ревью и PR 🤩


Разберёте AI-агентов, MCP, контекст проекта, безопасность и контроль расходов на модели.

📍 Только сегодня, 30 сентября — скидка 10 000 ₽

Промокод: LastcallAI

🤩 ⁠Присоединиться к курсу
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱2
🎹 Что делать после ChatGPT?

Следующий шаг — AI-агенты. Они не просто отвечают на запросы, а сами работают с данными, инструментами и выполняют цепочки действий.

На курсе «Разработка ИИ-агентов» разбираем всё, что нужно для этого уровня:

⬇️ RAG и работа с данными
⬇️ MCP и инструменты
⬇️ структурированный вывод
⬇️ контроль качества и стоимости
⬇️ мультиагентные системы
⬇️ AgentOps

Курс полностью в записи — проходите материалы в своём темпе, без привязки к расписанию.

⏰ 4 октября цена вырастет на 10 000 ₽.

Если давно хотели разобраться в AI-агентах — сейчас ещё можно зайти по текущей цене.

🔗 ⁠Посмотреть курс
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱12
Перенос MiniJinja с Rust на Go силами Opus и Codex

Около десяти часов работы агента и примерно 45 минут активного участия автора. Так Армин Ронахер оценивает основной перенос MiniJinja с Rust на Go. MiniJinja собирает текст по шаблонам.

Он начал с Opus 4.5 внутри Pi, а оставшиеся исправления тестов передал GPT-5.2 Codex. Рабочая среда оставалась той же; Go-реализацию сверяли с сохранёнными результатами тестов Rust-версии.

По ходу работы агент отказался от проверок, в которых программа должна завершаться ошибкой: текст сообщений не совпадал дословно. Ронахер вмешался и сохранил эти тесты, изменив способ сравнения сообщений.

📍 Навигация: Вакансии • Задачи • Собесы

🐸 Библиотека Go-разработчика
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека программиста
👀 Как вы смотрите видео?

Разбираете урок, слушаете интервью фоном или начинаете на телефоне, а продолжаете на большом экране?

Хотим узнать, что делает просмотр удобным для вас. Вспомните последнее видео — ролик, урок, фильм или серию сериала — и расскажите о своём опыте. Если детали не запомнились, можно так и ответить.

🕰️ Опрос займёт около 3 минут.

В результатах сможете сравнить свои привычки с ответами других участников. А разработчики и инженеры видеоплатформы расскажут, что происходит по ту сторону экрана, пока вы смотрите видео.

🔗 Поделиться опытом

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM