plinker / redbean
v0.4.8
2018-05-11 16:20 UTC
Requires
- php: >=5.3.4
- gabordemooij/redbean: >=4.2
- plinker/core: >=0.1
README
PlinkerRPC PHP 客户端/服务器使得在远程系统上链接和执行 PHP 组件类变得非常容易,同时保持了本地方法调用的感觉。
RedBeanPHP 组件,它将允许您直接管理远程站点上的数据库。
Composer
{
"require": {
"plinker/redbean": ">=v0.1"
}
}
进行远程调用。
<?php
require 'vendor/autoload.php';
try {
/**
* Plinker Config
*/
$config = [
// plinker connection | using tasks as to write in the correct .sqlite file
'plinker' => [
'endpoint' => 'http://127.0.0.1/examples/redbean/server.php',
'public_key' => 'makeSomethingUp',
'private_key' => 'againMakeSomethingUp'
],
// database connection
'database' => [
'dsn' => 'sqlite:./.plinker/database.db',
'host' => '',
'name' => '',
'username' => '',
'password' => '',
'freeze' => false,
'debug' => false,
]
];
// init plinker endpoint client
$rdb = new \Plinker\Core\Client(
// where is the plinker server
$config['plinker']['endpoint'],
// component namespace to interface to
'Redbean\Redbean',
// keys
$config['plinker']['public_key'],
$config['plinker']['private_key'],
// construct values which you pass to the component
$config['database']
);
//..
} catch (\Exception $e) {
exit(get_class($e).': '.$e->getMessage());
}
然后是服务器部分...
<?php
require 'vendor/autoload.php';
/**
* POST Server Part
*/
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$server = new Plinker\Core\Server(
$_POST,
'username',
'password'
);
exit($server->execute());
}
有关附加组件的信息,请参阅组织页面。