承接 kwk/geckoboard-dataset-api 相关项目开发

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

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

kwk/geckoboard-dataset-api

Composer 安装命令:

composer require kwk/geckoboard-dataset-api

包简介

Library that provides client for Geckoboard DataSet API

README 文档

README

Library provides client for Geckoboard DataSet API by REST requests

SensioLabsInsight Scrutinizer Code Quality Code Coverage

Branches

  • 0.1.x PHP 5.6 support and guzzle 5.*
  • 0.2.x PHP 7.1+ support and guzzle ^5.3.2

How to use

DataSet definition + data row

Create DataSet definition:

<?php

namespace Preview;

use Kwk\Geckoboard\Dataset\DatasetBuilder;
use Kwk\Geckoboard\Dataset\DataSetInterface;
use Kwk\Geckoboard\Dataset\Type\DateType;
use Kwk\Geckoboard\Dataset\Type\NumberType;

class TestDataset implements DataSetInterface
{
    /**
     * {@inheritDoc}
     */
    public function getName()
    {
        return 'test';
    }

    /**
     * {@inheritDoc}
     */
    public function getDefinition()
    {
        return (new DatasetBuilder())
            ->addField('date_field_id', new DateType('Date'))
            ->addField('number_field_id', new NumberType('Number'))
            ->build();
    }
}

Create implementation of DataRowInterface:

<?php

namespace Preview;

use Kwk\Geckoboard\Dataset\DataSetRowInterface;

class TestDatarow implements DataSetRowInterface
{
    /**
     * {@inheritDoc}
     */
    public function getData()
    {
        return [
            'date_field_id' => '2016-12-31',
            'number_field_id' => 1021,
        ];
    }
}

Client usage

Create client:

$httpClient = new \Guzzle\Http\Client('https://api.geckoboard.com');
$client = new \Kwk\Geckoboard\Dataset\Client($httpClient, 'YOUR_API_KEY');

Create DataSet at Geckoboard:

$client->create(new \Preview\TestDataset());

Append row:

With class:

<?php

namespace Preview\Dataset;

use Kwk\Geckoboard\Dataset\DataSetRowInterface;

class TestDatarow implements DataSetRowInterface
{
    /**
     * {@inheritDoc}
     */
    public function getData()
    {
        return [
            'param1' => 'val1',
            'param2' => 'val2',
        ];
    }
}

Appending is just one liner:

$client->append(new \Preview\TestDataset(), [new \Preview\TestDatarow()]);

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-12-31

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固