基于 PHP 的数据聚合器 dataComposer

码农软件 · 软件分类 · 数据库连接池 · 2019-09-03 14:14:49

软件介绍

datacomposer :数据聚合器。可以把 mysql,mongo,http api,xml, excel 等不同来源的数据按照数据列对应关系(类似于主键外键)聚合成树状结构的数据集合的实用小工具。

它是php第三方类库,通过composer工具安装或升级

目前支持的php框架:laveral, thinkphp。

小例子:如下有两张表,想在获取订单数据时,同时获取对应的商户数据。


  1. 添加一个配置文件:order.php

  2. 文件内容如下:

return [
	"property" => [
		"tableName" => "order",
	],
	"dataSource" => [
		"customer" => [
			"property" => [
				"tableName" => "customer",
				"relationKey" => ["customer_id" => "id"]
			]
		]
	]
]

获取数据

$dc=new Engine("order");
$data=$dc->GetData();

数据如下

[
	[
		"id" => 1,
		"customer_id" => 333,
		"customer"=>[
			"id"=>333,
			"name"=>"小米",
			"address"=>"北京"
		],
		"address" => "北京海淀西办街12号",
		"name" => "张三",
		"mobile" => "13455555555",
		"number" => 3
	],
	[
		"id" => 2,
		"customer_id" => 354,
		"customer"=>[
			"id"=>354,
			"name"=>"华为",
			"address"=>"深圳"
		],
		"address" => "上海天津街45号301",
		"name" => "李四",
		"mobile" => "17634343434",
		"number" => 1
	]
];

注意

datacomposer(数据聚合器)只能通过父级数据源影响子级数据源数据,不能反过来。

用上面例子说明,order数据源添加where条件后, customer数据会跟随变化。

但是 customer数据源添加where条件后,只会影响自己的数据,不会影响 order数据。

支持的数据源

  • 几乎所有关系型数据库:mysql,sqlserver,oracle,sqlite 等

  • mongo

  • redis

  • excel

  • 文件型数据源:json,xml,phpArray

  • http api

  • 其他数据源(通过自定义读取器支持)

本文地址:https://codercto.com/soft/d/13789.html

ACM图灵奖演讲集

ACM图灵奖演讲集

阿申豪斯特 / 苏运霖 / 电子工业出版社 / 2005-4 / 55.0

本书完整地收录了这些演讲,并配之以部分获奖者撰写的后记,旨在反映过去数年来这一领域中发生的变化。对任何一位计算机科学的历史与发展有兴趣的人来说,本书都极具收藏价值。  本文收录了自图灵奖开始颁发的1966年起到1985年这20年间图灵奖获得者在授奖大会上所做演讲的全文。由于在此期间有三次是把奖项同时授予两个人的,而其中有两次两位获奖者分别做了演讲,因此一共收录了22篇演讲稿。本书把这些演讲分为两大......一起来看看 《ACM图灵奖演讲集》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器