Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter
11.3K subscribers
1.36K photos
20 videos
26 files
4.06K links
Все самое полезное для пхпшника в одном канале.

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

Учиться у нас: https://proglib.io/w/bca892d6

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

РКН: https://gosuslugi.ru/snet/67a5d13cd6fa92100ee6f68b
Download Telegram
EasyAdmin и Mercure: реальный юзкейс

EasyAdmin — один из самых популярных генераторов административных панелей, доступных для Symfony-приложений. Поскольку для аутентификации пользователей он использует стандартный компонент безопасности Symfony, он позволяет входить в систему и изменять данные множеству пользователей одновременно. Но есть одна проблема…
👍32👾1
какой используете/хотели бы использовать?
Ищем копирайтера

Нам нужен человек, который:
— Любит IT и русский язык.
— Понимает разницу между бэкендом и фронтендом, OWASP и MISRA, функциональным программированием и ООП, микроконтроллером и миникомпьютером, UX и UI.
— Имеет опыт работы от 1 года.
— Будет плюсом, если вы программируете на каком-нибудь языке на уровне стажера/джуна.

Что нужно делать:
— Готовить подборки, ТОПы книг, ютуб- и телеграм-каналов по языкам программирования.
— Делать расшифровки топовых Ютуб-роликов по теме программирования и оформлять их в виде статей.
— Готовить новостные заметки.
— Актуализировать старые статьи.
— Брать интервью у экспертов. Мы поможем с поиском экспертов.
— Иногда писать небольшие рекламные посты в телеграм.
— Писать статьи с кодом, переводить статьи (по желанию, оплачивается отдельно).

Можно использовать нейронки?
— Да, главное, чтобы материал получился интересный.

Условия:
— Белая зарплата: 50 000 руб.
— Возможность работать удаленно.

👉Присылайте свои резюме: [email protected]
2😁2👍1
Что нового в PHP 8.3

PHP 8.3 выйдет 23 ноября 2023 года; в нем есть улучшения для классов readonly, новая функция json_validate(), дополнения к недавно добавленному классу Randomizer, обнаружение переполнения стека и многое другое.
👍156🔥6😁1
Видео: Интервью с создателем NativePHP

Марсель Поцьо пришел на интервью, чтобы рассказать об одном из его последних проектов: использовании PHP для создания кроссплатформенных приложений, выглядящих как нативные.
7😁1
Еще один #дайджест новостей по PHP за неделю:

🔎PHP 8.2.9 выпущен - Команда разработчиков PHP объявляет о немедленной доступности PHP 8.2.9. Это релиз безопасности. Всем пользователям PHP 8.2 рекомендуется выполнить обновление до этой версии.

🔎Выпущена версия Laravel Herd v1.2.0! Давайте посмотрим на некоторые особенности этой новой версии.

🔎Нуно Мадуро объявил на X, что Pest v2.16 уже вышел. Это обновление включает в себя поддержку встроенных функций плагина Arch, новые ожидания и многое другое.

🔎Неделя Symfony № 868 (14–20 августа 2023 г.)
👍3
PHP Fibers: практический пример

Файберы появились в PHP 8.1 в конце 2020 и привнесли в язык своего рода асинхронное программирование. Они представляют собой легковесные потоки исполнения (известные как сопрограммы, или корутины (coroutine)). Они исполняются параллельно, но обрабатываются исключительно самой runtime-средой, а передаются напрямую в процессор. Разные реализации сопрограмм есть во многих основных языках, но принцип один и тот же: позволить компьютеру одновременно выполнять две и больше задач и ждать, пока они все не завершатся.

PHP-реализация файберов — это не настоящие асинхронные вычисления, как можно подумать. Даже после появления новинки ядро языка осталось синхронным. Применение файберов можно сравнить с пересаживанием из одного автомобиля в другой.

Здесь представлен практический пример их использования.
👍81
🐛 9 признаков неопытного программиста

Давайте попробуем отделить зерна от плевел и вывести несколько общих признаков, по которым можно определить неопытного программиста.
🥱11👍4🤔2🌚21
Статистика Laravel Volt в реальном времени

Статья описывает, как с использованием фреймворка Laravel подключить динамическую статистику посещаемости пользователей приложения в режиме реального времени.

Есть три варианта варианта реализации:

Регистрация активных пользователей в таблице базы данных. Каждая запись будет иметь user_id и метку времени, когда они были активны. Затем вы можете проверить активность за последние 5 минут или любой другой желаемый период времени.

Создать столбец «last_login_at» в таблице пользователей

Использовать сервер веб-сокетов для подсчета активных пользователей в реальном времени.

Автор использует Redis и Volt для этого
👍52🔥1
Укрепите типобезопасность ваших массивов

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

Автор предлагает использование пользовательских классов: вместо простых массивов можно использовать классы, которые могут иметь строгую типизацию и методы для работы с данными. Это обеспечивает более гибкую и безопасную работу с данными. Классы также позволяют определить пользовательские методы для проверки или преобразования данных.
👍81🔥1👾1
Что такое GRASP паттерны?

General Responsibility Assignment Software Patterns — шаблоны проектирования для решения общих задач. В отличие от паттернов из Банды Четырех, GRAPS шаблоны не имеют выраженной структуры, четкой области применения и конкретной решаемой проблемы, а лишь представляют собой обобщенные подходы/рекомендации/принципы, используемые при проектировании дизайна системы.

Хорошая статья по теме

#вопросы_с_собеседований
😁72
Laravel 10. Как настроить Ajax-запрос.

Настройка запросов Ajax в Laravel 10 упрощает связь между вашим интерфейсом и сервером, позволяя получать обновления в реальном времени и улучшать взаимодействие с пользователем без необходимости полной перезагрузки страницы.

В этом руководстве вы познакомитесь с процессом настройки запросов Ajax в Laravel 10, как использовать JavaScript и jQuery для отправки асинхронных запросов на ваш сервер, предоставления данных и обработки ответов в реальном времени.
🥱202👍1
Отладка Gateway Error

Статья рассматривает отладку ошибок шлюзов (gateway errors) при разработке веб-приложений. Шлюзы являются промежуточными слоями веб-приложения, которые служат для обработки запросов и могут вызывать ошибки, которые необходимо отлаживать и исправлять.

Шлюз — это нечто, находящееся между веб-сервером (обычно Nginx) и вашим приложением. Для большинства из нас это PHP-FPM. Nginx будет использовать протокол fastcgi для преобразования веб-запроса в нечто, понятное PHP-FPM. Затем PHP-FPM запускает ваше приложение, настраивая PHP с необходимой информацией (устанавливая суперглобальные переменные $_GET, $_POST, $_SESSION, $_SERVERи т. д.).

Если PHP-FPM возвращает ошибку, Nginx выдает нам ошибку шлюза.
👍21
Как удалить переходные зависимости, которые вам не нужны

В статье описывается подход к управлению ненужными зависимостями в проекте на языке программирования PHP.

Здесь рассматривается проблема переходных зависимостей, которые добавляются в проект вместе с другими зависимостями, но которые на самом деле не используются в коде проекта. Такие ненужные зависимости могут замедлить процесс загрузки проекта и увеличить объем потребляемых ресурсов.

Поскольку часто такие зависимости не представлены в composer.json удаление их с помощью команды remove невозможно, автор предлагает вместо этого использовать раздел replace в Comsposer и тогда можно легко избавиться от неиспользуемых зависимостей.
👍42
#дайджест #phpdevjob

Вакансии недели для Москвы 👨🏻‍🏫

Team Lead в АТЛАНТ
Москва. Федеральная сеть розничных магазинов.
Подробнее

PHP-программист в ООО Интерфинити
Москва. Проекты в области автомобильной промышленности.
Подробнее

PHP-разработчик Junior+ в Delaweb
Москва. Продуктовая и enterprise разработка.
Подробнее

PHP разработчик Junior+ в DatainLife
Москва. Разработка для малого, среднего и крупного бизнеса.
Подробнее

PHP разработчик в Разумные решения
Москва. Разработка мобильных приложений.
Подробнее

Понравились вакансии?
👍 — да
👎 — нет
😁6👍31
#хочу_спросить

Задавайте любые вопросы о программировании и получайте ответы от пользователей. В комментариях под постом укажите #язык, #стек и/или #библиотеку, по которым задаете вопрос.
2😁1
Моки и их влияние на дизайн программного обеспечения

Моки — это объекты, созданные для имитации поведения реальных объектов в тестировании программного обеспечения. Они используются для создания контролируемых и предсказуемых сценариев для тестирования функциональности.

Статья объясняет, что мок-объекты могут быть полезными инструментами для разработчиков, так как они позволяют изолировать и тестировать определенные части кода, не зависимо остальные компоненты.

Но так же моки имеют недостаток: их сложно рефакторить.

Автор рассказывает как их правильно использовать, а также предлагает альтернативные варианты.
👍54
Что такое REST API?

REpresentational State Transfer — архитектурный подход, который позволяет организовать взаимодействие между приложениями, используя все возможности HTTP. Хорошая статья на эту тему, а также различия REST и SOAP.
В контексте API нужно понимать основные форматы обмена данными, чаще всего это XML и JSON.

#вопросы_с_собеседований
👍107😁4
Раскройте силу простоты: приложение PHP CLI с минимальными зависимостями

Статья рассказывает о том, как создать простое и эффективное CLI-приложение на PHP, минимизируя зависимости и избегая излишней сложности.
11