utocat/catalizr

此PHP包库用于Catalizr API

dev-master 2019-04-29 17:38 UTC

This package is not auto-updated.

Last update: 2024-09-25 09:01:23 UTC


README

PHP Library for Catalizr API CATALIZR LIBRARY

这是一个用于与Catalizr API协同工作的PHP客户端库。

需求

要使用此库,您至少需要以下内容

  • PHP v5.6
  • cURL(包含并启用在标准PHP发行版中)
  • OpenSSL(包含并启用在标准PHP发行版中)
  • 您不必使用Composer,但强烈建议您这样做(尤其是对于处理PSR Log库的依赖项)

使用Composer安装

您可以使用Composer将Catalizr库作为项目依赖项(这是首选方法)。如果您尚未安装Composer,请按照这些安装说明进行操作。在存储库中有一个composer.json文件,它已在Packagist中进行引用。

使用Composer安装既简单又可靠

步骤1 - 通过执行以下命令将Catalizr库作为依赖项添加

you@yourhost:/path/to/your-project$ composer require utocat/catalizr

步骤2 - 使用Composer更新您的依赖项

you@yourhost:/path/to/your-project$ composer update

步骤3 - 最后,确保将自动加载器包含到您的项目中

require_once '/path/to/your-project/vendor/autoload.php';

库已添加到您的依赖项中,并准备好使用。

不使用Composer安装

项目试图遵守PSR-4规范,以便从文件路径自动加载类。命名空间前缀是Catalizr\,基本目录是/path/to/your-project/

如果您不使用PSR-4或Composer,安装就像下载库并将它存储在项目中可用的任何位置一样简单(不过别忘了包含所需的库依赖项

    require_once '/path/to/your-project/Catalizr/Autoloader.php';

许可证

Catalizr库在MIT许可证下分发,请参阅LICENSE文件

单元测试

测试基于phpunit。要与其他质量工具一起安装它,您可以在克隆的项目中安装本地npm项目

git https://github.com/utocat/lib-catalizr-php.git
cd lib-catalizr-php
php composer.phar install

编辑phpunit.xml文件,使用您的凭据通过功能测试。然后,您可以直接使用phing运行单元和功能测试。

vendor/bin/phing test

要跳过功能测试并只运行单元测试,可以使用only.units选项

vendor/bin/phing test -Donly.units=true

联系方式

使用GitHub上的问题跟踪器报告错误或建议功能。

账户创建

您可以请求账户(请注意,您的沙盒/生产账户的验证可能需要几天时间,因此请提前考虑)。

配置

使用您的订阅的凭据,您应该将$api->config->publicKey设置为您的Catalizr公钥,将$api->config->privateKey设置为您的Catalizr私钥。

$api->config->url设置为预生产环境。要启用生产环境,将其设置为https://api.catalizr.io

require_once '/path/to/your-project/vendor/autoload.php';
$api = new Catalizr\Api();

// configuration
$api->config->publicKey = 'your-public-key';
$api->config->privateKey = 'your-private-key';
$api->config->url = 'https://preprod.api.catalizr.io';

// call some API methods...
try {
    $investorIds = $api->investors->getAllId();
} catch(Exception $ex) {
    // handle/log the response exception with code $ex->getCode(), message $ex->getMessage()
}

示例用法

require_once '/path/to/your-project/vendor/autoload.php';
$api = new Catalizr\Api();

// configuration
$api->config->publicKey = 'your-public-key';
$api->config->privateKey = 'your-private-key';
$api->config->url = 'https://preprod.api.catalizr.io';

// Create an investor with personal ID
try {
    $investor = new \Catalizr\Entity\Investors();
	$investor->name = "Doe";
	$investor->surname = "John";
	$investor->birth_date = "1990/08/03";
	$investor->birth_city = "Hirson";
	$investor->address = "165 Avenue de Bretagne";
	$investor->zip = "59000";
	$investor->city="Lille";
	$investor->country = "Nord";
	$investor->title = "M.";
	$investor->iid = "MY_PERSONAL_ID";
	$api->investors->create($investor);
} catch(Exception $ex) {
    // handle/log the response exception with code $e->GetCode(), message $ex->getMessage()
}

// Get an investor with a personal ID
try {
    $investorGet = $api->investors->getByExternalId($investor->iid);
} catch(Exception $ex) {
    // handle/log the response exception with code $e->getCode(), message $ex->getMessage()
}

在Symfony项目中使用Composer的示例用法

您可以在您的Symfony项目中集成Catalizr功能。

CatalizrService.php

<?php

namespace Path\To\Service;

use Catalizr;


class CatalizrService
{

    private $catalizrApi;

    public function __construct()
    {
        $this->catalizrApi = new Catalizr\Api();
        $this->catalizrApi->config->publicKey = 'your-public-key';
        $this->catalizrApi->config->privateKey = 'your-private-key';
        $this->catalizrApi->config->url = 'https://api.preprod.catalizr.io';    
    }
    
    /**
     * Create a new
     * @return Investor $investor
     */
    public function createInvestor()
    {  
        $investor = new \Catalizr\Entity\Investors();
		$investor->name = "Doe";
		$investor->surname = "John";
		$investor->birth_date = "1990/08/03";
		$investor->birth_city = "Hirson";
		$investor->address = "165 Avenue de Bretagne";
		$investor->zip = "59000";
		$investor->city="Lille";
		$investor->country = "Nord";
		$investor->title = "M.";
		$investor->iid = "MY_PERSONAL_ID";

        //Send the request
        $investor = $this->catalizrApi->investors->create($investor);

        return $investor;
    }
}

查看变更日志

您可以通过我们的变更日志文件跟踪所有更改。