es
Feedback
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter

Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter

Ir al canal en Telegram

Все самое полезное для пхпшника в одном канале. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/bca892d6 Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5d13cd6fa92100ee6f68b

Mostrar más

📈 Análisis del canal de Telegram Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter

El canal Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter (@phpproglib) en el segmento lingüístico de Ruso es un actor destacado. Actualmente la comunidad reúne a 10 714 suscriptores, ocupando la posición 11 607 en la categoría Tecnologías y Aplicaciones y el puesto 61 272 en la región Rusia.

📊 Métricas de audiencia y dinámica

Desde su creación el невідомо, el proyecto ha mostrado un crecimiento acelerado, reuniendo a 10 714 suscriptores.

Según los últimos datos del 04 junio, 2026, el canal mantiene una actividad estable. En los últimos 30 días la variación de miembros fue de -37, y en las últimas 24 horas de -1, conservando un alto alcance.

  • Estado de verificación: No verificado
  • Tasa de interacción (ER): El promedio de interacción de la audiencia es 15.37%. Durante las primeras 24 horas tras publicar, el contenido suele obtener 8.92% de reacciones respecto al total de suscriptores.
  • Alcance de las publicaciones: Cada publicación recibe en promedio 1 647 visualizaciones. En el primer día suele acumular 956 visualizaciones.
  • Reacciones e interacción: La audiencia responde de forma activa: el promedio de reacciones por publicación es 9.
  • Intereses temáticos: El contenido se centra en temas clave como php, laravel, пхпшника, artisan, api.

📝 Descripción y política de contenido

El autor describe el recurso como un espacio para expresar opiniones subjetivas:
Все самое полезное для пхпшника в одном канале. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/bca892d6 Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5d13cd6fa92100ee6f68b

Gracias a la alta frecuencia de actualizaciones (últimos datos recibidos el 05 junio, 2026), el canal mantiene la vigencia y un amplio alcance. La analítica demuestra que la audiencia interactúa activamente con el contenido, lo que lo convierte en un punto de referencia dentro de la categoría Tecnologías y Aplicaciones.

10 714
Suscriptores
-124 horas
-117 días
-3730 días
Archivo de publicaciones
#байтовый_юмор
#байтовый_юмор

💬 Обратная связь Коллеги, давайте соберём базу годных ресурсов по PHP помимо нашего канала. ✔️ Присылайте в комменты: — Блоги и статьи — Telegram-каналы — YouTube-каналы и подкасты — Репозитории — Доклады Что НЕ ищем Курсы "php с нуля за месяц", базовые туториалы и переводы официальной документации. 💬 Закидывайте в комменты ваши любимые источники. Для работы, для учёбы, для повседневного чтения.

🔥 База по ИИ-агентам от научного сотрудника Сколтеха и НИУ ВШЭ Знакомьтесь, Екатерина Трофимова. Кандидат компьютерных наук,
🔥 База по ИИ-агентам от научного сотрудника Сколтеха и НИУ ВШЭ Знакомьтесь, Екатерина Трофимова. Кандидат компьютерных наук, ресерчер в Центре ИИ Сколтеха и лаборатории LAMBDA. Она объединяет глубокую академическую экспертизу и практику: знает, как ИИ-системы устроены «под капотом» и как встроить их в реальные сервисы (в т.ч. для Сбера). Мы попросили Екатерину собрать список мастхев материалов для тех, кто хочет проектировать агентов в проде. Сохраняйте список. 🛠 Стек и фреймворки: DSPy — алгоритмическая оптимизация промптов (вместо ручного подбора слов). Semantic Kernel и LangMem — инструменты для управления сессионной и долгосрочной памятью. MCP (Model Context Protocol) — новый стандарт от Anthropic для подключения агентов к вашим БД и локальным файлам. 📖 Документация, которую нужно знать: Anthropic Prompt Caching — как кэшировать контекст и радикально резать косты на API. OpenAI Agents SDK / Cookbook — лучшие практики работы с памятью. Augment — платформа для оптимизации работы ИИ-агентов и контроля токенов. 🔬 Хардкорные статьи и препринты (на выходные): Lost in the Middle — почему LLM «слепнут» на длинных текстах и забывают середину контекста. How Do Coding Agents Spend Your Money? — куда улетает бюджет при работе автономных кодинг-агентов. MemGPT — архитектура операционной системы для LLM с иллюзией бесконечной памяти. InjecAgent / AgentSentry — всё о безопасности и защите агентов от инъекций в промпты. Екатерина Трофимова — один из ключевых экспертов нашего курса AgentOps. На своих лекциях она детально разбирает, как проектировать инструменты для агентов, как агент принимает решения о вызове инструментов и какие ограничения возникают в реальном проде 🎁 Акция в честь старта продаж! Прямо сейчас при покупке Инженерного трека вы получаете полный доступ к материалам курса «Разработка ИИ-агентов» в подарок. 👉 Забрать 2 курса по цене 1 и начать обучение

#байтовый_юмор
#байтовый_юмор

⚡️ Laravel: withCount() вместо with() для агрегатов with('orders') подгружает всю коллекцию моделей в память. Если нужна только цифра — это избыточно. ❌ Антипаттерн
$users = User::with('orders')->get();
// Eloquent грузит все связанные модели в память
// затем PHP считает count() на уже загруженной коллекции

foreach ($users as $user) {
    echo $user->orders->count();
}
✅ Правильно
$users = User::withCount('orders')->get();
// Генерирует подзапрос: SELECT count(*) as orders_count
// Один SQL-запрос, ноль лишних объектов в памяти

foreach ($users as $user) {
    echo $user->orders_count;
}
Доступные хелперы одного семейства:
User::withSum('orders', 'total')    // orders_sum_total
User::withAvg('reviews', 'rating')  // reviews_avg_rating
User::withMin('orders', 'total')    // orders_min_total
User::withMax('orders', 'total')    // orders_max_total
Каждый из них транслируется в коррелированный подзапрос. А цепочка из нескольких всё равно будет одни основным SELECT'ом. Применимо когда: — рендеришь список с агрегированными метриками; — строишь API без лишних аллокаций; — профилируешь и видишь with() там, где нужна только цифра.

⚡️ Laravel: withCount() вместо with() для агрегатов --- with('orders') подгружает всю коллекцию моделей в память. Если нужна только цифра — это избыточно. ❌ Антипаттерн:
$users = User::with('orders')->get();
// Eloquent грузит все связанные модели в память
// затем PHP считает count() на уже загруженной коллекции

foreach ($users as $user) {
    echo $user->orders->count();
}
✅ Правильно:
$users = User::withCount('orders')->get();
// Генерирует подзапрос: SELECT count(*) as orders_count
// Один SQL-запрос, ноль лишних объектов в памяти

foreach ($users as $user) {
    echo $user->orders_count;
}
Доступные хелперы одного семейства:
User::withSum('orders', 'total')    // orders_sum_total
User::withAvg('reviews', 'rating')  // reviews_avg_rating
User::withMin('orders', 'total')    // orders_min_total
User::withMax('orders', 'total')    // orders_max_total
Каждый из них транслируется в коррелированный подзапрос. Цепочка из нескольких — всё равно один основной SELECT. --- Применимо когда: — рендеришь список с агрегированными метриками — строишь API без лишних аллокаций — профилируешь и видишь with() там, где нужна только цифра --- #laravel #php #eloquent #performance #backend

Команда git cherry-pick A..B выбирает коммиты:
Anonymous voting

🔄Вы используете шаблоны, запросы и конфигурации каждый день. Но понимаете ли вы, как они устроены внутри? 📅На открытом урок
🔄Вы используете шаблоны, запросы и конфигурации каждый день. Но понимаете ли вы, как они устроены внутри? 📅На открытом уроке за 60 минут разберём, как работает любой язык — и соберём свой DSL на PHP. Покажем полный конвейер: от исходного текста до результата. Вы увидите, как писать лексер, строить синтаксическое дерево и реализовывать интерпретатор. Всё — на чистом PHP, без магии и скрытых механизмов. Это даёт не просто новый навык, а понимание, как работают инструменты, которыми вы уже пользуетесь: шаблонизаторы, запросы, правила. И как создавать собственные решения под задачи бизнеса — без хардкода и сложных обходных путей. 💡Открытый урок проходит в преддверии старта курса «PHP-разработчик. Продвинутый уровень» 29 апреля в 20:00 МСК. Регистрация: https://clc.to/sU25lg Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

⌨️ Топ-вакансий по PHP за неделю Fullstack разработчик PHP — от 180 000 до 230 000 ₽ — удалёнка Backend-разработчик — от 1 800 до 3 100 $ — удалёнка Team Lead PHP — до 402 000 ₽ — удалёнка ➡️ Еще больше топовых вакансий — в нашем канале PHP Jobs

#байтовый_юмор
#байтовый_юмор

🗓 В следующий вторник (28.04) в 19:00 встречаемся в онлайне. Тема:
Как эффективно управлять контекстным окном LLM в мультиагентных системах и не сливать бюджет на токены
В кружке Кирилл рассказал, какие именно подходы будем разбирать. 👉 Занять место на вебинаре

⌛ Сохраняйте шпаргалку по командам git
Сохраняйте шпаргалку по командам git

🔥 Вечный вопрос PHP-разработчика Наш подписчик спрашивает:
«Работаю в компании 2 года. Достался огромный легаси-проект на PHP 7.1. Всё в кучу, тесты не писались никогда. Меня просят его "улучшать" параллельно с фичами. Как вообще подступиться? Рефакторить по-тихому или настаивать на переписывании? И как объяснить бизнесу, что технический долг — это реальная проблема, а не моё нытьё?» — Дмитрий, PHP Developer
💬 Делитесь в комментариях — Как вы работаете с легаси: рефакторинг кусками или полный переезд? — Как убеждали руководство выделить время на технический долг? — Есть ли у вас правило: когда код точно пора переписывать? P.S. Если хотите задать вопрос, заполните нашу гугл-форму. Это займет 5 минут. #междусобойчик

⚙️ Полезный инструмент для работы с JSON JSON-файлы с высокой вложенностью часто сложно прочитать. 𝐉𝐬𝐨𝐧𝐂𝐫𝐚𝐜𝐤 создает
⚙️ Полезный инструмент для работы с JSON JSON-файлы с высокой вложенностью часто сложно прочитать. 𝐉𝐬𝐨𝐧𝐂𝐫𝐚𝐜𝐤 создает графические диаграммы из JSON-файлов и делает их легко читаемыми. Кроме того, созданные диаграммы можно скачать в виде изображений. Также поддерживает YAML и XML форматы.

Объясни разницу между Gate и Policy в Laravel? Оба инструмента для авторизации, но с разной областью применения. Gateпростые одиночные проверки, не привязанные к модели:
// Определяем в AuthServiceProvider
Gate::define('access-admin-panel', function (User $user) {
    return $user->is_admin;
});

// Проверяем
if (Gate::allows('access-admin-panel')) { ... }
// или в контроллере
$this->authorize('access-admin-panel');
Policy класс с набором правил для конкретной модели:
// php artisan make:policy PostPolicy --model=Post
class PostPolicy
{
    public function update(User $user, Post $post): bool
    {
        return $user->id === $post->user_id;
    }

    public function delete(User $user, Post $post): bool
    {
        return $user->id === $post->user_id || $user->is_admin;
    }
}

// Использование
$this->authorize('update', $post);
Правило выбора — Нет модели → Gate — Есть модель, несколько действий → Policy

⚡️ Мы рады представить команду экспертов курса AgentOps! — Дмитрий Антипов расскажет, как грамотно проверить работу AI-моделе
⚡️ Мы рады представить команду экспертов курса AgentOps!Дмитрий Антипов расскажет, как грамотно проверить работу AI-моделей — Курилл Кухарев поделится, почему компаниям выгодно использовать локальные модели и как их развернуть — Андрей Носов расскажет, как работать с данными и знаниями в AI-системах: построение RAG, выбор подходов к поиску и организация хранения данных — Антон Будняк разберет, как обеспечить устойчивость сервиса, в котором используется ИИ — Александр Ошурков расскажет, как оценивать качество работы LLM в backend-сервисах — Екатерина Трофимов разберет, как проектировать инструменты для AI-агентов и выстраивать взаимодействие с внешними сервисами Курс для backend-разработчиков, тимлидов и LLM инженеров о том, как внедрять AI-логику в бэкенд IT-продуктов и сохранять стабильность сервиса. К концу обучения вы получите: • Структурированный подход к архитектуре и деплою AI-агентов • Навыки настройки мониторинга, тестирования и контроля расходов на токены • Разбор сложных инженерных кейсов из реальной практики 🎁 Доступ к материалам курса «Разработка ИИ-агентов» в подарок при покупке Инженерного трека 👉 Все подробности и программа обучения.

#байтовый_юмор
#байтовый_юмор

🐘 Меняем директивы PHP на лету Знаете, что можно изменить параметры среды выполнения прямо в рантайме без перезапуска сервера и правки конфигов? 🔹 Зачем это нужно — ini_set() меняет параметры для текущего запроса: удобно для скриптов с нестандартными требованиями к памяти или таймаутам. — ini_get() покажет реальное значение, которое видит ваш процесс, а не то, что вы написали в конфиге три года назад. — Мгновенно отвечает на вопрос «а почему memory_limit игнорируется?» — Работает без доступа к серверу, рестартов и DevOps-тикетов. 🔹 Как использовать Посмотреть реальное значение директивы:
echo ini_get('memory_limit'); // '128M'
Переопределить на лету для тяжёлого импорта:
ini_set('memory_limit', '512M');
ini_set('max_execution_time', '300');
Дамп всех активных настроек:
phpprint_r(ini_get_all());
Только настройки конкретного расширения:
phpprint_r(ini_get_all('session'));
Проверить, откуда пришло значение — из php.ini, .htaccess или кода:
php$all = ini_get_all(null, true);
print_r($all['memory_limit']);
// ['global_value' => '128M', 'local_value' => '512M', 'access' => 7]
⚠️ Не все директивы можно менять через ini_set(), каждая имеет уровень доступа. Если ini_set() возвращает false — директива системная, её меняет только php.ini или конфиг пула php-fpm. Смотрите поле access в выводе ini_get_all(): 1 — можно из кода, 2 — только .htaccess/пул, 4 — только php.ini, 7 — везде.

☕️ Меняем php.ini на лету Знаете, что ваше приложение может изменить параметры среды выполнения прямо в рантайме без перезапуска сервера и правки конфигов? 🔹 Зачем это нужно — ini_set() меняет параметры для текущего запроса: удобно для скриптов с нестандартными требованиями к памяти или таймаутам. — ini_get() покажет реальное значение, которое видит ваш процесс, а не то, что вы написали в конфиге три года назад. — Мгновенно отвечает на вопрос «а почему memory_limit игнорируется?» — Работает без доступа к серверу, рестартов и DevOps-тикетов. 🔹 Как использовать Посмотреть реальное значение директивы:
echo ini_get('memory_limit'); // '128M'
Переопределить на лету для тяжёлого импорта:
ini_set('memory_limit', '512M');
ini_set('max_execution_time', '300');
Дамп всех активных настроек:
phpprint_r(ini_get_all());
Только настройки конкретного расширения:
phpprint_r(ini_get_all('session'));
Проверить, откуда пришло значение — из php.ini, .htaccess или кода:
php$all = ini_get_all(null, true);
print_r($all['memory_limit']);
// ['global_value' => '128M', 'local_value' => '512M', 'access' => 7]
⚠️ Не все директивы можно менять через ini_set(), каждая имеет уровень доступа. Если ini_set() возвращает false — директива системная, её меняет только php.ini или конфиг пула php-fpm. Смотрите поле access в выводе ini_get_all(): 1 — можно из кода, 2 — только .htaccess/пул, 4 — только php.ini, 7 — везде.