pigeon-cloud / pigeon-cloud-sdk
v1.0.9
2025-09-29 05:33 UTC
Requires
None
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Overview
The Pigeon Cloud SDK makes it easier for developers to use Pigeon Cloud API in their PHP code. Pigeon Cloud API
Installation
composer require pigeon-cloud/pigeon-cloud-sdk
Requirement
- PHP 8.0+
Usage
.env
PIGEON_API_URL=https://xxx.pigeon-cloud.com/api/v1
PIGEON_MASTER_ID=admin
PIGEON_MASTER_PASSWORD=password
example.php
require 'vendor/autoload.php'; use PigeonCloudSdk\PigeonCondition; use PigeonCloudSdk\PigeonProvider; // Environment variables need to be loaded. // Example: When using phpdotenv, `composer require vlucas/phpdotenv` $dotenv = \Dotenv\Dotenv::createImmutable(__DIR__); $dotenv->load(); $pigeonProvider = new PigeonProvider('{table_id}'); $pigeonCondition = new PigeonCondition(); $pigeonCondition->add('{and_or}', '{field}', '{condition}', '{value}'); list($data, $count) = $pigeonProvider->fetch($pigeonCondition);
Features
fetch
$pigeonProvider = new PigeonProvider('1'); $pigeonCondition = new PigeonCondition(); $pigeonCondition->add('and', 'field__1', 'eq', '1'); $page = 1; $per_page = 10; $order = 'id desc'; $fields = ['field__1']; // fetch list list($data, $count) = $pigeonProvider->fetch($pigeonCondition, $page, $per_page, $order, $fields); // fetch one $data = $pigeonProvider->fetchOne($pigeonCondition, $order, $fields); // fetch all $data_all = $pigeonProvider->fetchAll($pigeonCondition, $order, $fields);
insert
$pigeonProvider = new PigeonProvider('1'); // insert $insert_data = [ ['field__1' => 'Test 1'], ['field__1' => 'Test 2'], ]; $response_data = $pigeonProvider->insert($insert_data); // insert one $inserted_id = $pigeonProvider->insertOne(['field__1' => 'Test 1']);
update
$pigeonProvider = new PigeonProvider('1'); // update $update_data = [ ['id' => 1, 'field__1' => 'Update 1'], ['id' => 2, 'field__1' => 'Update 2'], ]; $response_data = $pigeonProvider->update($update_data); // update one $isSucceeded = $pigeonProvider->updateOne(1, ['field__1' => 'Update 1']);
delete
$pigeonProvider = new PigeonProvider('1'); // delete $response_data = $pigeonProvider->delete([1, 2]); // delete one $isSucceeded = $pigeonProvider->delete(1);
file
$pigeonProvider = new PigeonProvider('1'); // delete $response = $pigeonProvider->file('1'); header('Content-Disposition: attachment; filename="filename.ext"'); echo $response; exit(0);
debug mode
$pigeonProvider = new PigeonProvider('1'); $pigeonProvider->setDebug(); // Enable Debug mode $pigeonProvider->fetch(); // The API URL, POST data, and response data will be displayed.