citfact/uservars

用户变量模块

dev-master 2014-07-06 16:04 UTC

This package is auto-updated.

Last update: 2024-09-16 02:10:55 UTC


README

当需要为网站添加多个简单设置并允许从管理部分编辑时,例如允许客户修改,可以使用此库。为了方便,变量可以分组。

库位于命名空间 Citfact\UserVars

安装

创建或更新 composer.json 文件并运行 php composer.phar install

  {
      "require": {
          "citfact/uservars": "dev-master"
      }
  }

使用示例

用于快速访问变量和组的服务类是 Citfact\UserVars\VarsCitfact\UserVars\VarsGroup

  use Citfact\UserVars;

  $varsGroup = new UserVars\VarsGroup();

  // Предопределены два метода findBy* и findOneBy*
  $varsGroup->findById(1);
  $varsGroup->findByCode('TEST');

  $vars = new UserVars\Vars();
  $vars->findById(1);
  $vars->findByCode('TEST');
  $vars->findByGroup(1);

  // Получаем все переменные по символьному коду
  $varsResult = $vars->findByCode('FIND_CODE');
  while ($var = $varsResult->fetch()) {
    print_r($var);
  }

  // Получаем одну переменную из группы
  $var = $vars->findOneByGroup(1)->fetch();

对于更灵活的变量或组选择,可以直接通过模型操作

  • Citfact\UserVars\Model\VarsTable
  • Citfact\UserVars\Model\VarsGroupTable
  use Bitrix\Main\Entity;
  use Citfact\UserVars\Model;

  $queryBuilder = new Entity\Query(Model\VarsGroupTable::getEntity());
  $queryBuilder
    ->setSelect(array('ID', 'NAME', 'CODE'))
    ->setOrder(array('ID', 'asc'))
    ->setFilter(array('CODE' => 'TEST_CODE'))
    ->setLimit(1);

  $result = $queryBuilder->exec()->fetch();

删除和更新操作也通过模型执行

  use Citfact\UserVars\Model;

  // Удаляем переменную с ID = 1
  Model\VarsTable::delete(1);

  // Обновляем наименование у группы
  Model\VarsGroupTable::update(1, array('NAME' => 'New name'));