beinsystems/essentials 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

beinsystems/essentials

最新稳定版本:v0.8.1

Composer 安装命令:

composer require beinsystems/essentials

包简介

Essential components for my projects including error handler, database utilities, and Telegram bot integration

README 文档

README

Пакет с основными компонентами для проектов BeinSystems, включающий обработчик ошибок, утилиты для работы с базой данных и интеграцию с Telegram ботом.

Установка

composer require beinsystems/essentials

Автоматическая настройка

После установки пакета через Composer, все компоненты автоматически подключаются и настраиваются:

  • Обработчик ошибок - автоматически регистрируется и обрабатывает все ошибки PHP
  • Утилиты базы данных - класс Database для работы с базой данных
  • Telegram бот - функции для отправки уведомлений в Telegram
  • Функция stop() - для корректного завершения скриптов

Использование

Просто подключите автозагрузчик Composer в вашем проекте:

<?php
require_once 'vendor/autoload.php';

// Обработчик ошибок уже активен!
// Все ошибки будут автоматически логироваться и отправляться в Telegram

// Ваш код...

Конфигурация

Убедитесь, что в вашем .env файле настроены следующие переменные:

# Настройки приложения
DEBUG_MODE=false
ADMIN_EMAIL=your@email.com

# Настройки для генератора Snowflake
DATACENTER_ID=1
WORKER_ID=1

# Настройки для обработки ошибок
ERROR_REPORTING=E_ALL
DISPLAY_ERRORS=1
LOG_ERRORS=1

# Настройки логирования
LOG_LEVEL=debug
LOG_FILE_PATH=logs/app.log
LOG_TO_FILE=1                    # 1 - включить логирование в файл, 0 - выключить
LOG_TO_TELEGRAM=1                # 1 - включить логирование в Telegram, 0 - выключить
LOG_DATE_FORMAT=Y-m-d H:i:s      # Формат даты для логов

# Database Configuration
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=your_database
DB_USERNAME=your_username
DB_PASSWORD=your_password

# Telegram Integration
TG_BOT_TOKEN=your_bot_token
TG_CHAT_ID=your_chat_id

# Настройки RabbitMQ
RABBITMQ_HOST=localhost
RABBITMQ_PORT=5672
RABBITMQ_USER=guest
RABBITMQ_PASSWORD=guest
RABBITMQ_VHOST=/

Компоненты

ErrorHandler

Автоматически обрабатывает все ошибки PHP и отправляет уведомления в Telegram.

Настройки логирования:

  • LOG_TO_FILE - включить/выключить логирование ошибок в файл
  • LOG_TO_TELEGRAM - включить/выключить отправку ошибок в Telegram
  • LOG_FILE_PATH - путь к файлу логов
  • LOG_DATE_FORMAT - формат даты для записей в логах

Пример использования:

// Логирование происходит автоматически при возникновении ошибок
// Для ручного логирования используйте:
log_to_file("Ваше сообщение");

Database

Класс для работы с базой данных с встроенным логированием SQL-запросов.

Управление логированием:

$db = new Database($dsn, $username, $password);

// Включить/выключить логирование в файл
$db->enableFileLogging();
$db->disableFileLogging();

// Включить/выключить логирование в Telegram
$db->enableTelegramLogging();
$db->disableTelegramLogging();

// Проверить статус логирования
if ($db->isFileLoggingEnabled()) {
    // ...
}

Примечание: По умолчанию настройки логирования берутся из переменных окружения LOG_TO_FILE и LOG_TO_TELEGRAM.

Telegram Bot

Функции для отправки сообщений в Telegram.

Доступные функции:

// Отправка отформатированного сообщения
SendTlgrmReport($text);

// Отправка объекта/массива (автоматически форматируется в JSON)
SendTG($object);

Настройки:

  • TG_BOT_TOKEN - токен вашего Telegram бота
  • TG_CHAT_ID - ID чата для отправки сообщений

Stop Function

Функция для корректного завершения скриптов с кодами ошибок.

Использование:

// Завершить с ошибкой
stop(1001, 400, "Неверные параметры запроса");

// Завершить успешно
success($data, "Операция выполнена успешно");

统计信息

  • 总下载量: 75
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: proprietary
  • 更新时间: 2025-07-18