Добавление своих команд для CLI в Joomla 4 и Joomla 5 с помощью плагина
https://habr.com/ru/articles/797155/
https://habr.com/ru/articles/797155/
Хабр
Добавление своих команд для CLI в Joomla 4 и Joomla 5 с помощью плагина
В Joomla, как и во многих других PHP фреймворках и движках, уже довольно давно (с версий 1.7.x) существует возможность работы с помощью CLI - Command line interface. Конечно, вряд ли в эту статью...
WordPress: разбор уязвимости в Discount Rules for WooCommerce
https://habr.com/ru/articles/800321/
https://habr.com/ru/articles/800321/
Хабр
WordPress: разбор уязвимости в Discount Rules for WooCommerce
Введение Добрый день, уважаемые подписчики! Сегодня мы разберем одну старую уязвимость в плагине Discount Rules for WooCommerce < 2.2.0 для WordPress. WooCommerce - это плагин для создания...
Что делает функция «unlink»?
В PHP функция unlink() используется для удаления файла из файловой системы. Она принимает единственный параметр — путь к файлу, который вы хотите удалить. После вызова unlink() попытается удалить указанный файл из файловой системы. В случае успешного выполнения файл будет удален безвозвратно.
Код из примера проверяет, существует ли файл, и если да, то пытается удалить его с помощью unlink(). В случае успешного удаления выводится «Файл успешно удален.»; в противном случае выводится «Ошибка при удалении файла.». Если файл не существует, выводится «Файл не существует.».
#вопросы_с_собеседований
В PHP функция unlink() используется для удаления файла из файловой системы. Она принимает единственный параметр — путь к файлу, который вы хотите удалить. После вызова unlink() попытается удалить указанный файл из файловой системы. В случае успешного выполнения файл будет удален безвозвратно.
Код из примера проверяет, существует ли файл, и если да, то пытается удалить его с помощью unlink(). В случае успешного удаления выводится «Файл успешно удален.»; в противном случае выводится «Ошибка при удалении файла.». Если файл не существует, выводится «Файл не существует.».
#вопросы_с_собеседований
Как я обновлял свой проект на Laravel c 10-й версии на 11-ю
https://habr.com/ru/articles/800497/
https://habr.com/ru/articles/800497/
Хабр
Как я обновлял свой проект на Laravel c 10-й версии на 11-ю
Сегодня, 12 марта 2024, года официально вышла Laravel 11 . Спустя час после этой новости я решил обновлять свой небольшой пет-проект, который сделан на Laravel 10 до 11-й версии. И вот, сейчас я...
Опишите три основных типа ошибок в PHP
В PHP ошибки делятся на три основных типа:
Уведомления (Notices):
Уведомления — это наименее серьезный тип ошибок.
Они указывают на некритические проблемы, которые могут повлиять на функциональность сценария, но не обязательно приведут к его остановке.
Например, попытка доступа к неопределенной переменной или использование неопределенного индекса в массиве вызывает уведомление.
Уведомления часто полезны для выявления потенциальных ошибок или улучшений в коде.
Предупреждения (Warnings):
Предупреждения более серьезны, чем уведомления, но менее критичны, чем фатальные ошибки.
Они указывают на проблемы, которые могут потенциально вызвать проблемы, но не приводят к остановке выполнения сценария.
Например, попытка включить файл, который не существует, или использование устаревшей функции вызывает предупреждение.
Разработчики должны обращать внимание на предупреждения, так как они могут указывать на проблемы, требующие внимания.
Фатальные ошибки (Fatal Errors):
Фатальные ошибки — самый серьезный тип ошибок в PHP.
Они приводят к завершению выполнения сценария, и сценарий не может продолжить работу после обнаружения фатальной ошибки.
Примеры фатальных ошибок включают вызов неопределенной функции, превышение лимита памяти или попытку повторного объявления класса.
Фатальные ошибки должны немедленно устраняться, так как они препятствуют нормальной работе сценария.
Обработка ошибок:
Для обработки ошибок в PHP разработчики могут использовать функции обработки ошибок, такие как set_error_handler() для определения пользовательской обработки ошибок, error_reporting() для установки уровня отчетности об ошибках, а также блоки try, catch и finally для обработки исключений в PHP 7 и более поздних версиях.
#вопросы_с_собеседований
В PHP ошибки делятся на три основных типа:
Уведомления (Notices):
Уведомления — это наименее серьезный тип ошибок.
Они указывают на некритические проблемы, которые могут повлиять на функциональность сценария, но не обязательно приведут к его остановке.
Например, попытка доступа к неопределенной переменной или использование неопределенного индекса в массиве вызывает уведомление.
Уведомления часто полезны для выявления потенциальных ошибок или улучшений в коде.
Предупреждения (Warnings):
Предупреждения более серьезны, чем уведомления, но менее критичны, чем фатальные ошибки.
Они указывают на проблемы, которые могут потенциально вызвать проблемы, но не приводят к остановке выполнения сценария.
Например, попытка включить файл, который не существует, или использование устаревшей функции вызывает предупреждение.
Разработчики должны обращать внимание на предупреждения, так как они могут указывать на проблемы, требующие внимания.
Фатальные ошибки (Fatal Errors):
Фатальные ошибки — самый серьезный тип ошибок в PHP.
Они приводят к завершению выполнения сценария, и сценарий не может продолжить работу после обнаружения фатальной ошибки.
Примеры фатальных ошибок включают вызов неопределенной функции, превышение лимита памяти или попытку повторного объявления класса.
Фатальные ошибки должны немедленно устраняться, так как они препятствуют нормальной работе сценария.
Обработка ошибок:
Для обработки ошибок в PHP разработчики могут использовать функции обработки ошибок, такие как set_error_handler() для определения пользовательской обработки ошибок, error_reporting() для установки уровня отчетности об ошибках, а также блоки try, catch и finally для обработки исключений в PHP 7 и более поздних версиях.
#вопросы_с_собеседований
🔥 Дайджест полезных материалов из мира PHP за неделю
Почитать:
— Как я обновлял свой проект на Laravel c 10-й версии на 11-ю
— WordPress: разбор уязвимости в Discount Rules for WooCommerce
— Добавление своих команд для CLI в Joomla 4 и Joomla 5 с помощью плагина
— Пишем REST-приложение на Delphi
— Мы пилили монолит — много нас, а он один. Полезные советы от команды Яндекс Еды
— Как я обработал один миллиард строк в PHP
— Simple Introduction To HTMX
— PHP 8 News: "Never" Return Type
— Symfony Station Communiqué — 15 March 2024. A look at Symfony, Drupal, PHP, Cybersecurity, and Fediverse news!
— My passion for the world of graph databases
— Exploring GOTO: A Journey into the Prehistory of Programming
— 30 days of code in PHP - Fibers (day 2-3)
— How to translate the Laravel password reset email
— Rector keeps your PHP code base fresh and perfect
— How to integrate Component Architecture into Symfony?
— Taming your PHP app's memory footprint
Посмотреть:
🌐 Второй поток курса OAuth 2.0 + Laravel Passport от CutCode. Обзор курса (⏱ 01:19)
🌐 Своя игра от CutCode. Викторина по PHP (⏱ 01:16:40)
🌐 Прием платежей в криптовалюте на сайте с Cryptadium (⏱ 40:39)
🌐 Уязвимости и защита сайта. XSS-уязвимость (⏱ 35:42)
Хорошего дня!
Почитать:
— Как я обновлял свой проект на Laravel c 10-й версии на 11-ю
— WordPress: разбор уязвимости в Discount Rules for WooCommerce
— Добавление своих команд для CLI в Joomla 4 и Joomla 5 с помощью плагина
— Пишем REST-приложение на Delphi
— Мы пилили монолит — много нас, а он один. Полезные советы от команды Яндекс Еды
— Как я обработал один миллиард строк в PHP
— Simple Introduction To HTMX
— PHP 8 News: "Never" Return Type
— Symfony Station Communiqué — 15 March 2024. A look at Symfony, Drupal, PHP, Cybersecurity, and Fediverse news!
— My passion for the world of graph databases
— Exploring GOTO: A Journey into the Prehistory of Programming
— 30 days of code in PHP - Fibers (day 2-3)
— How to translate the Laravel password reset email
— Rector keeps your PHP code base fresh and perfect
— How to integrate Component Architecture into Symfony?
— Taming your PHP app's memory footprint
Посмотреть:
🌐 Второй поток курса OAuth 2.0 + Laravel Passport от CutCode. Обзор курса (⏱ 01:19)
🌐 Своя игра от CutCode. Викторина по PHP (⏱ 01:16:40)
🌐 Прием платежей в криптовалюте на сайте с Cryptadium (⏱ 40:39)
🌐 Уязвимости и защита сайта. XSS-уязвимость (⏱ 35:42)
Хорошего дня!
Forwarded from Kali Linux
🚨 Обнаружена критическая ошибка в плагинах miniOrange для WordPress.
Если вы используете miniorange сканер вредоносных программ (≤ 4.7.2) или брандмауэр веб-приложений (≤ 2.1.1), НЕМЕДЛЕННО УДАЛИТЕ ИХ.
Уязвимость позволяет злоумышленникам завладеть вашим сайтом.
Подробнее: https://thehackernews.com/2024/03/wordpress-admins-urged-to-remove.html
@linuxkalii
Если вы используете miniorange сканер вредоносных программ (≤ 4.7.2) или брандмауэр веб-приложений (≤ 2.1.1), НЕМЕДЛЕННО УДАЛИТЕ ИХ.
Уязвимость позволяет злоумышленникам завладеть вашим сайтом.
Подробнее: https://thehackernews.com/2024/03/wordpress-admins-urged-to-remove.html
@linuxkalii
Магический API Resource в Laravel
https://habr.com/ru/articles/800715/
https://habr.com/ru/articles/800715/
Хабр
Магический API Resource в Laravel
В Laravel есть удобные API ресурсы , с которыми легко и приятно работать в области трансформации данных для ответа на запрос. Но что делать когда возникает необходимость изменить их структуру в...
Анемичная модель предметной области и логика в сервисах
https://habr.com/ru/articles/800789/
https://habr.com/ru/articles/800789/
Хабр
Анемичная модель предметной области и логика в сервисах
Анемичная модель предметной области (Anemic domain model) это такая модель, где сущности содержат только свойства, а бизнес-логика находится в сервисах. Ее противоположность это богатая модель...
Система уведомлений в ресурсах Laravel
https://habr.com/ru/articles/800723/
https://habr.com/ru/articles/800723/
Хабр
Система уведомлений в ресурсах Laravel
В предыдущей статье по работе с API ресурсами в Laravel была затронута тема изменения бизнес-потребностей в области формирования внешнего вида объекта ответа на запрос к API приложения. В этой мы...
Исследование: какую долю занимает Joomla среди ru-сайтов в 2024 году?
https://habr.com/ru/articles/802387/
https://habr.com/ru/articles/802387/
Хабр
Исследование: какую долю занимает Joomla среди ru-сайтов в 2024 году?
В процессе работы как с самой Joomla, так и вместе с Joomla-сообществом периодически возникали вопросы о том "какую долю рынка CMS" занимает Joomla, каким общедоступным цифрам можно доверять и...
PHP и Laravel дайджест новостей за февраль 2024 года
https://habr.com/ru/articles/802343/
https://habr.com/ru/articles/802343/
Хабр
PHP и Laravel дайджест новостей за февраль 2024 года
Всем привет! Краткий обзор новостей из мира PHP и Laravel за февраль 2024 года от CutCode . PHP Дайджест Вышли PHP 8.2.16 и PHP 8.3.3 ? Выпуски с исправлениями ошибок вышли по расписанию. Вышел...
Как я уронил прод на полтора часа (и при чем тут soft delete и partial index)
https://habr.com/ru/companies/skyeng/articles/802191/
https://habr.com/ru/companies/skyeng/articles/802191/
Хабр
Как я уронил прод на полтора часа (и при чем тут soft delete и partial index)
Привет! Меня зовут Олег, и я работаю в Skyeng. Мы с командой разрабатываем ядро образовательной платформы, на которой проходят все онлайн‑уроки, решаются домашки, экзамены и...
🎥 Вот 45-минутный урок по PHPStan на YouTube.
В нем содержится большая часть того, что вам нужно знать о PHPStan, а также небольшой рабочий процесс CI👇
https://youtu.be/l6HkAYFBTJM
@phpshka
В нем содержится большая часть того, что вам нужно знать о PHPStan, а также небольшой рабочий процесс CI👇
https://youtu.be/l6HkAYFBTJM
@phpshka
YouTube
PHPStan static analysis in PHP
Unlock the full potential of your PHP code with PHPStan. Here's a 45 min dive deep into the world of static analysis, exploring how PHPStan can improve the quality of your code revolutionise the way you work. We'll round the whole lot off with a nice little…
Используем поля Joomla для фильтрации материалов
https://habr.com/ru/articles/805513/
https://habr.com/ru/articles/805513/
Хабр
Используем поля Joomla для фильтрации материалов
Настраиваемые поля В данном руководстве, подготовленном Брайаном Тимэном, рассматривается кейс, как можно применить настраиваемые поля для фильтрации материалов Joomla, видоизменив макет шаблона....
🔥 Дайджест полезных материалов из мира PHP за неделю
Почитать:
— Используем поля Joomla для фильтрации материалов
— DevOps лучшие бесплатные курсы, книги и ресурсы
— Is PHP really dead?
— 5 Websites for Free Laravel Templates
— Intro to DOMPDF - lightest and simplest PHP library to generate PDF documents
— Mengenal PHP: Pengertian, Sejarah, dan Keunggulan
— Mastering Global Functions in Laravel: Easy Methods for Versions 8,9,10,11.
— Wizard's Toolkit Demo
— How to debug ANY Symfony command simply passing `-x`
— Top 6 Alternatives to XAMPP for Local Development Environments
— The Importance of Including a Static Analyzer in Your Code
— Top 5 PHP Form Builders in 2024
Посмотреть:
🌐 PHP и Laravel дайджест новостей за март 2024 года. Обзор новостей по ПХП и Ларавел (⏱ 11:14)
🌐 Laravel 10. Работа с БД. Eloquent ORM. Часть 2 (⏱ 45:01)
🌐 Создание интернет-магазина на WooCommerce с нуля. 23. Страница товара-6. Отзывы и рекомендуемые (⏱ 38:35)
Хорошего дня!
@phpshka
Почитать:
— Используем поля Joomla для фильтрации материалов
— DevOps лучшие бесплатные курсы, книги и ресурсы
— Is PHP really dead?
— 5 Websites for Free Laravel Templates
— Intro to DOMPDF - lightest and simplest PHP library to generate PDF documents
— Mengenal PHP: Pengertian, Sejarah, dan Keunggulan
— Mastering Global Functions in Laravel: Easy Methods for Versions 8,9,10,11.
— Wizard's Toolkit Demo
— How to debug ANY Symfony command simply passing `-x`
— Top 6 Alternatives to XAMPP for Local Development Environments
— The Importance of Including a Static Analyzer in Your Code
— Top 5 PHP Form Builders in 2024
Посмотреть:
🌐 PHP и Laravel дайджест новостей за март 2024 года. Обзор новостей по ПХП и Ларавел (⏱ 11:14)
🌐 Laravel 10. Работа с БД. Eloquent ORM. Часть 2 (⏱ 45:01)
🌐 Создание интернет-магазина на WooCommerce с нуля. 23. Страница товара-6. Отзывы и рекомендуемые (⏱ 38:35)
Хорошего дня!
@phpshka
LayerSlider WordPress CVE-2024-2879
https://habr.com/ru/articles/805839/
https://habr.com/ru/articles/805839/
Хабр
LayerSlider WordPress CVE-2024-2879
Введение 25 марта 2024 года в рамках программы Bug Bounty Extravaganza исследователь под ником 1337_wannabe обнаружил уязвимость типа SQL-injection в одном из популярных плагинов для WordPress -...
Разработка автоматизированной очереди для сдачи лабораторных работ
https://habr.com/ru/articles/806471/
https://habr.com/ru/articles/806471/
Хабр
Разработка автоматизированной очереди для сдачи лабораторных работ
Во время обучения в политехе мы столкнулись с очередями на сдачу лабораторных работ преподавателю на очных парах. Сначала просто писали в общий чат, кто каким будет в очереди (например, "я первый", "я...
Подводные камни при разработке мобильного приложения на Bitrix REST API
https://habr.com/ru/articles/806381/
https://habr.com/ru/articles/806381/
Хабр
Подводные камни при разработке мобильного приложения на Bitrix REST API
Меня зовут Андрей Буйновский, я разработчик в ИТ-компании. Мы с командой решили написать эту статью и поделиться некоторыми проблемами, подводными камнями и их решениями в разработке мобильного...
php-tokio
Эта крутая библиотека позволяет вам использовать любую асинхронную библиотеку Rust из PHP в асинхронном режиме.
Она полностью интегрирована с revolt: это обеспечивает полную совместимость с amphp , PSL и responsephp.
https://github.com/danog/php-tokio
Эта крутая библиотека позволяет вам использовать любую асинхронную библиотеку Rust из PHP в асинхронном режиме.
Она полностью интегрирована с revolt: это обеспечивает полную совместимость с amphp , PSL и responsephp.
https://github.com/danog/php-tokio
GitHub
GitHub - danog/php-tokio: Use any async Rust library from PHP!
Use any async Rust library from PHP! Contribute to danog/php-tokio development by creating an account on GitHub.