承接 vsavritsky/bitrix-models 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

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

vsavritsky/bitrix-models

最新稳定版本:0.1.27

Composer 安装命令:

composer require vsavritsky/bitrix-models

包简介

Библиотека для работы с инфоблоками, хайлоадами и т.п как сущностями

README 文档

README

Библиотека для работы с данными инфоблоков, хайлоадблоков и пользователями Bitrix в стиле ООП с использованием паттерна Repository.

Быстрый старт

Установка

composer require your-vendor/bitrix-models

Основные возможности

  • ✅ Работа с элементами инфоблоков через ElementModel и ElementRepository
  • ✅ Работа с разделами инфоблоков через SectionModel и SectionRepository
  • ✅ Работа с товарами через ProductModel и ProductRepository
  • ✅ Работа с хайлоадблоками через HighloadModel и HighloadRepository
  • ✅ Работа с пользователями через UserModel и UserRepository
  • ✅ Гибкая система фильтрации, сортировки и выборки данных
  • ✅ Автоматическое кэширование запросов
  • ✅ Набор сервисов для работы с файлами, изображениями, датами и т.д.

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

// 1. Создайте модель
namespace App\Entity\Content;

use BitrixModels\Entity\ElementModel;

class News extends ElementModel
{
    const IBLOCK_CODE = 'news';
}

// 2. Создайте репозиторий
namespace App\Repository\Content;

use App\Entity\Content\News;
use BitrixModels\Repository\ElementRepository;

class NewsRepository extends ElementRepository
{
    protected $class = News::class;
}

// 3. Используйте репозиторий
use BitrixModels\Model\Filter;
use BitrixModels\Model\Sort;
use BitrixModels\Model\Select;

$repository = new NewsRepository();

// Поиск по ID
$news = $repository->findById(123);

// Поиск с фильтром и сортировкой
$filter = Filter::create()->eq('ACTIVE', 'Y');
$sort = Sort::create('SORT', Sort::ASC);
$news = $repository->findOneByFilter($filter, $sort);

// Поиск с пагинацией
$select = Select::create()->withAllProperties()->withSeo();
$result = $repository->findByFilter($select, $filter, $sort, 20, 1);

foreach ($result->getList() as $news) {
    echo $news->getName();
}

// Добавление элемента
$id = $repository->add([
    'NAME' => 'Новая новость',
    'ACTIVE' => 'Y',
], [
    'COLOR' => 'red',
]);

// Обновление элемента
$repository->update($id, [
    'NAME' => 'Обновленное название',
]);

Документация

📖 Полная документация - подробное описание всех сущностей, репозиториев и примеры использования

📚 Документация по сервисам - описание всех доступных сервисов

Основные классы

Сущности (Модели)

  • BitrixModels\Entity\ElementModel - элементы инфоблоков
  • BitrixModels\Entity\SectionModel - разделы инфоблоков
  • BitrixModels\Entity\ProductModel - товары (расширяет ElementModel)
  • BitrixModels\Entity\HighloadModel - элементы хайлоадблоков
  • BitrixModels\Entity\UserModel - пользователи

Репозитории

  • BitrixModels\Repository\ElementRepository - работа с элементами
  • BitrixModels\Repository\SectionRepository - работа с разделами
  • BitrixModels\Repository\ProductRepository - работа с товарами
  • BitrixModels\Repository\HighloadRepository - работа с хайлоадблоками
  • BitrixModels\Repository\UserRepository - работа с пользователями

Модели данных

  • BitrixModels\Model\Filter - фильтрация запросов
  • BitrixModels\Model\Sort - сортировка результатов
  • BitrixModels\Model\Select - выборка полей и свойств
  • BitrixModels\Model\ListResult - результат выборки с пагинацией

Сервисы

  • BitrixModels\Service\DateTimeService - форматирование дат
  • BitrixModels\Service\FileService - работа с файлами
  • BitrixModels\Service\PictureService - работа с изображениями
  • BitrixModels\Service\PhoneService - форматирование телефонов
  • BitrixModels\Service\GeoService - работа с геоданными
  • BitrixModels\Service\UrlService - работа с URL
  • BitrixModels\Service\SettingsService - работа с настройками

Лицензия

См. файл LICENSE

统计信息

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

GitHub 信息

  • Stars: 5
  • Watchers: 2
  • Forks: 3
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2021-08-13

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固