PHP Academy

Channel
Logo of the Telegram channel PHP Academy
@phpshkaPromote
8.81K
subscribers
@tombange - с вопросами
⭐️ Вопрос с собеседования: Что такое Path Traversal?

Path Traversal в PHP — это уязвимость безопасности, при которой злоумышленник может попытаться получить доступ к файлам или директориям за пределами предназначенной области. Это может произойти, если приложение неправильно обрабатывает пользовательский ввод в пути файлов.

К примеру, если веб-приложение позволяет пользователю вводить путь к файлу или директории и не достаточно проверяет и фильтрует этот ввод, злоумышленник может использовать специально сформированные строки для «перехода» за пределы заданной директории и, таким образом, получить доступ к конфиденциальным файлам на сервере.

Для предотвращения атак Path Traversal важно правильно обрабатывать и валидировать пользовательский ввод, особенно при работе с файловой системой. Рекомендуется использовать абсолютные пути и проверять, что запрошенные ресурсы находятся в пределах ожидаемой области файловой структуры. Также полезно ограничивать права доступа к файлам и директориям на сервере.
Please open Telegram to view this post
VIEW IN TELEGRAM
Узнайте, как настроить надёжную отправку и получение сообщений в Symfony!

📅 12 ноября, 20:00
🔗 Записаться на урок: ссылка

Будет интересно всем php-разработчикам.

На открытом уроке «Надёжная отправка и получение сообщений через RabbitMQ в Symfony» разберём:
Сценарии потери сообщений, отправляемых через внешний брокер
Как поступать в ситуации, когда обработку сообщения нужно повторить?
Реализация Transactional Outbox для гарантированной отправки сообщений

После открытого урока можно записаться на курс «Symfony Framework» по специальной цене и даже в рассрочку!

Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: 👉 ссылка

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
🖥 Как создать мок для известной библиотеки spatie/laravel-newsletter

Это нужно для того чтобы не вызывать реального API, а лишь имитировать успешную подписку и добавление тегов в Mailchimp

@phpshka
Please open Telegram to view this post
VIEW IN TELEGRAM
Приходите на курс “PHP Performance”

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

На курсе мы на практике изучим нужные инструменты, расскажем, как находить проблемы производительности, и как их исправлять.

🌐 В программе курса:

▪️
Архитектура бекенд-серверов на PHP и её особенности: php-fpm, RoadRunner, использование ресурсов, параметры конфигурации
▪️OpenTelemetry: применение на примере SigNoz
▪️Суб-real-time телеметрия поверх UDP c PINBA и промстэком (Grafana/Prometheus).

🥸 Кто мы: R&D-центр https://devhands.ru, наш канал (https://t.center/rybakalexey). Автор курса — Михаил Курмаев, эксперт по сложным распределённым системам. Долгое время строил платформу в Badoo/Bumble, сейчас в Т-банке развивает дата-платформу.

🗓 Старт курса: 28 ноября, 4 недели обучения.
Изучить программу и записаться можно здесь.

Ждем вас!

Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzqufgxJq
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
🖥 Введение в графовые БД в PHP

Этот урок должнен стать введением в использование графовых баз данных для разработчиков рhp.

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

📌 источник

@phpshka
Please open Telegram to view this post
VIEW IN TELEGRAM
🖼 php-jpeg-injector — скрипт на Python, который встраивает PHP-код в JPEG-изображения. Этот код можно использовать в веб-приложениях, где JPEG-файлы обрабатываются через библиотеку GD.

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

🖥 Github

@phpshka
Please open Telegram to view this post
VIEW IN TELEGRAM
Laravel разработчики, упростите загрузку файлов с этим инструментом! 💎

Используйте Storage::download(), чтобы принудительно запустить скачивание файла в браузере. Отлично подходит для защищенных файлов или генерации динамических загрузок.

Совет: Настройте имя файла и заголовки для большего контроля.

@phpshka
Хочешь переходить с PHP на Go? Посмотри как выглядит собес на Мидла

Эйч Навыки — менторская программа по Go-разработке, которая помогает поменять свой стек с PHP на Go, повысить грейд или найти новую работу.

7 ноября в 19:00 (мск) Даниил Динько, TeamLead команды Go-разработчиков в Oxygen Forensics (ex-Ozon), проведет открытое собеседование на Middle-позицию:

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

Эфир будет полезен, если ты:
– Планируешь переходить с PHP на Go.
– Думаешь о переходе с PHP в другие стеки.
– Уже знаешь Go, но боишься начать проходить собеседования.

Это бесплатно?
Бесплатно

👾 Регистрируйся на эфир в боте Эйч Навыков и получи грейд-карту навыков по Go, необходимых при найме в бигтех-компаниях.
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 PHP TUI

Мощный фреймворк для создания консольных приложений на PHP с псевдографическим пользовательским интерфейсом.

https://github.com/php-tui/php-tui

@phpshka
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️Легкий способ получать свежие обновления и следить за трендами в разработке на вашем языке. Находите свой стек и подписывайтесь:

МАШИННОЕ ОБУЧЕНИЕ: https://t.center/ai_machinelearning_big_data
C++ https://t.center/cpluspluc
Python: https://t.center/pythonl
Хакинг: https://t.center/linuxkalii
Devops: https://t.center/DevOPSitsec
АНАЛИЗ Данных: https://t.center/data_analysis_ml
Javascript: https://t.center/javascriptv
C#: https://t.center/csharp_ci
Java: https://t.center/javatg
Базы данных: https://t.center/sqlhub
Linux: https://t.center/linuxacademiya
Python собеседования: https://t.center/python_job_interview
Мобильная разработка: https://t.center/mobdevelop
Docker: https://t.center/DevopsDocker
Golang: https://t.center/Golang_google
React: https://t.center/react_tg
Rust: https://t.center/rust_code
ИИ: https://t.center/vistehno
PHP: https://t.center/phpshka
Android: https://t.center/android_its
Frontend: https://t.center/front
Big Data: https://t.center/bigdatai
Собеседования МЛ: https://t.center/machinelearning_interview
МАТЕМАТИКА: https://t.center/data_math
Kubernets: https://t.center/kubernetc
Angular: https://t.center/+qIJAuSEb2MQyMDJi

💼 Папка с вакансиями: https://t.center/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: https://t.center/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: https://t.center/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.center/addlist/2Ls-snqEeytkMDgy
Папка FRONTEND: https://t.center/addlist/mzMMG3RPZhY2M2Iy

😆ИТ-Мемы: https://t.center/memes_prog
🇬🇧Английский: https://t.center/english_forprogrammers
🧠ИИ: https://t.center/vistehno

🎓954ГБ ОПЕНСОРС КУРСОВ: @courses
📕Ит-книги бесплатно: https://t.center/addlist/BkskQciUW_FhNjEy
Совет по Laravel 💡: Метод «diffInDaysFiltered»

Вам когда-нибудь требовалось подсчитать количество дней между двумя датами при фильтрации по условию? Поскольку Laravel использует Carbon под капотом, вы можете использовать «diffInDaysFiltered», чтобы сделать именно это 🚀.

#laravel #php

@phpshka
🧩 JSON Parser

PHP парсер с нулевыми зависимостями для чтения больших JSON из любого источника с эффективным использованием памяти.

composer require cerbero/json-parser

🔗 Github

@phpshka
💡 Быстрый совет PHP

Простой способ чтения JSON-файлов в Laravel.

@phpshka
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Самые популярные пакеты, запущенные в 2024 году 🚀

https://laralibrary.com/top-packages-launched/2024

@phpshka
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️Легкий способ получать свежие обновления и следить за трендами в разработке на вашем языке. Находите свой стек и подписывайтесь:

МАШИННОЕ ОБУЧЕНИЕ: https://t.center/ai_machinelearning_big_data
C++ https://t.center/cpluspluc
Python: https://t.center/pythonl
Хакинг: https://t.center/linuxkalii
Devops: https://t.center/DevOPSitsec
АНАЛИЗ Данных: https://t.center/data_analysis_ml
Javascript: https://t.center/javascriptv
C#: https://t.center/csharp_ci
Java: https://t.center/javatg
Базы данных: https://t.center/sqlhub
Linux: https://t.center/linuxacademiya
Python собеседования: https://t.center/python_job_interview
Мобильная разработка: https://t.center/mobdevelop
Docker: https://t.center/DevopsDocker
Golang: https://t.center/Golang_google
React: https://t.center/react_tg
Rust: https://t.center/rust_code
ИИ: https://t.center/vistehno
PHP: https://t.center/phpshka
Android: https://t.center/android_its
Frontend: https://t.center/front
Big Data: https://t.center/bigdatai
Собеседования МЛ: https://t.center/machinelearning_interview
МАТЕМАТИКА: https://t.center/data_math
Kubernets: https://t.center/kubernetc


💼 Папка с вакансиями: https://t.center/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: https://t.center/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: https://t.center/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.center/addlist/2Ls-snqEeytkMDgy
Папка FRONTEND: https://t.center/addlist/mzMMG3RPZhY2M2Iy

😆ИТ-Мемы: https://t.center/memes_prog
🇬🇧Английский: https://t.center/english_forprogrammers
🧠ИИ: https://t.center/vistehno

🎓954ГБ ОПЕНСОРС КУРСОВ: @courses
📕Ит-книги бесплатно: https://t.center/addlist/BkskQciUW_FhNjEy
⚡️ CipherSweet

Полезная библиотека, которая разработанная компанией Paragon Initiative Enterprises для реализации шифрования на уровне полей с возможностью поиска.

https://github.com/paragonie/ciphersweet
Media is too big
VIEW IN TELEGRAM
🖥 Полный курс Laravel Swagger. REST API Laravel

00:00:00 Введение
00:04:25 Делаем заготовку
00:16:20 Установка Swagger
00:22:18 Общие аннотации и настройки Swagger
00:28:01 CRUD со Swagger
01:03:03 Установка JWT Auth
01:13:08 Авторизация и защищенные роуты в Swagger
01:20:20 Бонус. Нестандартные тело запроса и ответа

источник

@phpishka
Please open Telegram to view this post
VIEW IN TELEGRAM
Highload, системный дизайн, производительность и масштабирование

Приглашаем на курс для прокачки навыков архитектора и проектировщика, которые важны для профессионального роста программиста.

🌐 С курсом «Системный дизайн высоконагруженных проектов» вы:

▪️изучите ключевые фундаментальные паттерны и получите навыки проектирования проектов с миллионной аудиторией (балансировка, масштабирование апп/кешей/субд, высокая доступность и кластерные решения, шардинг, CAP/PACELS, консистентность, саги, транзакционные очереди и многое другое)
▪️поупражняетесь в проектировании и получите обратную связь на реальных задачах: магазин/маркетплейс, такси/доставка, обьявления, соцсети, дейтинг, игры, википедия, мессенжер, CDN, хранилище файлов, онлайн-кинотеатр, счетчики, удаленный мониторинг, интеграционные вебхуки, рассылки и тд.
▪️ научитесь планировать нагрузку и связывать
бизнес-показатели с нефункциональными требованиями к системе
▪️ попрактикуемся в проведении и прохождения секций системного дизайна на интервью

Всё в формате «живых» онлайн-сессий (лекции, брейнштормы, презентации домашних проектов).

🥸 Кто мы: школа Devhands, основатель школы и автор курса Алексей Рыбак, ex-СТО Badoo, с 20-летним опытом высоконагруженных проектов и и управления глобальными технологическими организациями, член программного комитета Highload.

🗓 Старт 22-го октября, изучаем программу, записываемся здесь

Erid:2VtzqxYvjFF
Реклама. ИП Рыбак А.А. ИНН 771407709607
Please open Telegram to view this post
VIEW IN TELEGRAM
Совет по Laravel💡

Хотите быстро вывести SQL-запросы, выполненные во время вашего запроса?

И не хотите устанавливать Debugbar, Telescope и т.п.?

Используйте DB::listen() с toRawSql()!

@phpshka
Telegram Center
Telegram Center
Channel