コード例 #1
0
 public function testOrEvaluate()
 {
     $conditions = ['a gteq 80', 'b gteq 1000', 'c gteq 10000'];
     $rule = new \Simplerule\Simplerule($conditions);
     $obj = (object) ['a' => 10, 'b' => 1000, 'c' => 1000];
     $this->assertTrue($rule->orEvaluate($obj));
     $obj = (object) ['a' => 100, 'b' => 100, 'c' => 1000];
     $this->assertTrue($rule->orEvaluate($obj));
     $obj = (object) ['a' => 10, 'b' => 100, 'c' => 10000];
     $this->assertTrue($rule->orEvaluate($obj));
     $obj = (object) ['a' => 10, 'b' => 100, 'c' => 1000];
     $this->assertFalse($rule->orEvaluate($obj));
 }
コード例 #2
0
ファイル: example.php プロジェクト: ariarijp/simplerule
<?php

require_once __DIR__ . '/../vendor/autoload.php';
$rule = new \Simplerule\Simplerule(['a eq 10', 'b eq 100', 'c gt 500']);
$obj = (object) ['a' => 10, 'b' => 100, 'c' => 1000];
var_dump($rule->andEvaluate($obj));
// true
$obj = (object) ['a' => 10, 'b' => 100, 'c' => 300];
var_dump($rule->andEvaluate($obj));
// false
$obj = (object) ['a' => 100, 'b' => 100, 'c' => 10000];
var_dump($rule->andEvaluate($obj));
// false
$obj = (object) ['a' => 10, 'b' => 100, 'c' => 1000];
var_dump($rule->orEvaluate($obj));
// true
$obj = (object) ['a' => 100, 'b' => 100, 'c' => 10000];
var_dump($rule->orEvaluate($obj));
// true