adrorocker / php-firebase
Google Firebase 的 PHP SDK
v0.3.0
2018-01-22 07:07 UTC
Requires
- php: >= 5.6
- guzzlehttp/guzzle: ~6.0
Requires (Dev)
- phpunit/phpunit: 5.6.*
This package is auto-updated.
Last update: 2024-08-29 04:36:59 UTC
README
用于 Firebase REST API 的 PHP SDK。
安装
composer require adrorocker/php-firebase
用法
require '../vendor/autoload.php'; use PhpFirebase\Firebase; // Base endpoint $base = 'https://hey-123.firebaseio.com/somesubendpoint'; // Auth token $token = 'a1b2c3d4e5f6g7h8i9'; $firebase = new Firebase($base,$token); // Unique ID $id = (new \DateTime())->getTimestamp(); // Set the data (body of the request). $data = ['key' => 'value']; // The data could be even just a string // Make a PUT request, the response is return $put = $firebase->put('/logs/'.$id, $data); // Make a GET request, the response is return, // you will have all the logs in the $get variable $get = $firebase->get('/logs');
额外功能
现在 PHP-Firebase 提供了一种简单的方式来使用仓库保存和检索 实体。
你可以这样使用它们
- 创建一个 实体 类
// app/Model/User/User.php <?php namespace App\Model\User; use PhpFirebase\Entities\Entity; class User extends Entity { protected $id; public $firstName; public $lastName; }
- 创建一个 仓库 类
// app/Model/User/UserRepository.php <?php namespace App\Model\User; use PhpFirebase\Entities\Repository\Repository; class UserRepository extends Repository { public function __construct() { // Base endpoint $base = 'https://hey-123.firebaseio.com/somesubendpoint'; // Auth token $token = 'a1b2c3d4e5f6g7h8i9'; $this->class = User::class; parent::__construct($base, $token, '/users'); } }
- 用法
require '../vendor/autoload.php'; $repo = new UserRepository(); // Create user $user = new User([ 'id' => 1, 'firstName' => 'Adro', 'lastName' => 'Rocker', ]); $user = $repo->store($user); // $user will be an instance of App\Model\User // Update user // You can get or assign values to an entity property using a method named as the property name. $user->lastName('Rocks'); // setting $lastName to be 'Rocks'. $lastName = $user->lastName(); // getting $lastName, $lastName has the value 'Rocks'. $user = $repo->store($user); // Find user $user = $repo->find(1); // $user will be an instance of App\Model\User