OSQuery的一个PHP封装:Query
jopen
11年前
Query是非死book开源的操作系统监控工具:osquery的一个PHP封装。
Example
Simple usage:
use Formativ\Query\BuilderProxy; use Formativ\Query\RunnerProxy; $builder = BuilderProxy::select("*") ->from("processes") ->limit(5); RunnerProxy::run($builder, function(array $data) { // use $data }, function($error) { // log $error }); Custom factories:
use Formativ\Query\BuilderProxy; use Formativ\Query\Factory\BuilderFactory; use Formativ\Query\Factory\RunnerFactory; use Formativ\Query\RunnerProxy; class CustomBuilderFactory extends BuilderFactory { public function newInstance() { // ... } } $builder = BuilderProxy::with(new CustomBuilderFactory()) ->select("*") ->from("processes") ->limit(5); class CustomRunnerFactory extends RunnerFactory { public function newInstance() { // ... } } RunnerProxy::with(new CustomRunnerFactory()) ->run($builder, function(array $data) { // use $data }, function($error) { // log $error }); BuilderProxy::with()andBuilderProxy::select()create new instances ofBuilderProxy.BuilderProxy::with($factory)is the same asnew BuilderProxy($factory)RunnerProxy::with()andRunnerProxy::run()create new instances ofRunnerProxy.RunnerProxy::with($factory)is the same asnew RunnerProxy($factory)