areal-team / bx-data
方便访问 1C-Bitrix 数据的类
0.6.9
2020-05-08 14:37 UTC
Requires
- php: >=5.6.0
Requires (Dev)
- phpunit/phpunit: 4.*
README
无论这是信息块还是高负载块。
- 您不再需要记住信息块的 ID。
- 您不再需要编写大量代码来从高负载块中获取基本数据。
使用方法
要获取汽车模型列表,只需编写
$models = new \App\Catalog\Model; $result = $models->getList();
在变量 $result 中,您得到一个模型数组。不再需要循环、GetNext、Fetch 等操作。
带有过滤、排序和字段限制的查询
$models = new \App\Catalog\Model; $result = $models->getList([ "select" => ["id", "name", "brandId", "brandName"], "filter" => ["brandId" => 120], "order" => ["name" => "asc"], ]);
在数据库中,将只执行一个类型为的查询
SELECT `model`.`ID` AS `ID`, `model`.`UF_NAME` AS `UF_NAME`, `model`.`UF_BRAND` AS `UF_BRAND`, `model_brandname_`.`UF_NAME` AS `brandName` FROM `b_hlbd_auto_model` `model` LEFT JOIN `b_hlbd_auto_brand` `model_brandname_` ON `model`.`UF_BRAND` = `model_brandname_`.`ID` WHERE `model`.`UF_BRAND` = 120 AND (`model`.`UF_DELETED` IS NULL OR `model`.`UF_DELETED` = 0) ORDER BY `model`.`UF_NAME` ASC
带有按值过滤、排序和字段限制的查询
$models = new \App\Catalog\Model; $result = $models->getList([ "select" => ["id", "name", "brandId", "brandName"], "filter" => ["brandName" => "renault"], "order" => ["name" => "asc"], ]);
在数据库中,将只执行一个类型为的查询
SELECT `model`.`ID` AS `ID`, `model`.`UF_NAME` AS `UF_NAME`, `model`.`UF_BRAND` AS `UF_BRAND`, `model_brandname_`.`UF_NAME` AS `brandName` FROM `b_hlbd_auto_model` `model` LEFT JOIN `b_hlbd_auto_brand` `model_brandname_` ON `model`.`UF_BRAND` = `model_brandname_`.`ID` WHERE UPPER(`model_brandname_`.`UF_NAME`) like upper('renault') AND (`model`.`UF_DELETED` IS NULL OR `model`.`UF_DELETED` = 0)
您可能会说:高负载块也能做到同样的。只是可能需要写更多代码。
是的,当然。但是想想在用高负载块表示实体时需要写多少代码。这时候可能就不想动手了。比较一下现在需要写多少代码
namespace App\Catalog; class Model extends \Akop\Element\HlElement { protected $entityName = 'Model'; }
这就是整个类的文本。 全部。其余的一切都由您完成。
安装
安装方式遵循 composer 的标准方法
composer require aak74/bx-data