任何人都可以为PHP规则教程提供一个很好的链接吗?
我目前只能找到一个:
但是这个链接并没有真正提到如何在我们的应用程序中使用它。而且,他们用来解释的例子没有这样的输出..
答案 0 :(得分:4)
以下是一些链接:
似乎没有很多关于php-rules的教程,但它在使用方面也应该相当简单。如果您对代码示例有特定的问题,您可能会得到更好的答案,并能够推进事情。
此外,我建议您与作者Greg Swindle联系,因为他可能会为您提供其他教程。
答案 1 :(得分:1)
我已经花了几个小时进入规则引擎,最后得到了关键......我根本不清楚这个方向,所以我想这可能有助于某人辩论是否有使用php规则。
为了简单且更有控制地使用,可以从codeigniter中获取PHP规则
第1步:从The PHP Rules Download Page
下载软件包步骤2:提取存档,并将文件夹php-rules-sample / system / application / libraries / Phprules复制到php服务器上的某个位置。
步骤3:通过在每个文件的顶部注释掉defined或die语句,对Phpules文件夹中的所有文件进行解码,然后在Rule.php中注释掉其中包含大写CI的3行。
所有文件:
1:<?php//if ( ! defined('BASEPATH')) exit('No direct script access allowed');
Rule.php:
// private $CI;
public function Rule( $name='' ) {
//$this->CI =& get_instance();
$this->name = $name;
$this->elements = array();
}
public function __construct( $name='' ) {
//$this->CI =& get_instance();
$this->name = $name;
$this->elements = array();
}
完成所有操作后,以下test.php将至少测试一条规则并给你反馈。 (来自网站上的演示):
<?php
include("/Phprules/Rule.php");
// Create the rule
$rule = new Rule('eligibleForGroupDiscount');
// Declare the minimun number of people required for discount
$rule->addVariable('minNumPeople', 6);
// Declare a "placeholder" variable for the actual number of people
$rule->addVariable('actualNumPeople', 0);
// Compare the two, i.e.,
// minNumPeople >= actualNumPeople
$rule->addOperator('GREATERTHANOREQUALTO');
// Create a RuleContext, i.e., a "Fact"
$ruleContext = new RuleContext('eligibleForGroupDiscountFact');
// Declare the minimun number of people required for discount
$ruleContext->addVariable('minNumPeople', 6);
// How many people are there?
$ruleContext->addVariable('actualNumPeople', 7);
// Evaluate
$result = $rule->evaluate($ruleContext);
// Print the resulting Proposition
echo $result->toString();
?>
这至少可以让你到一个可以开始评估规则的地方。您可以更改actualNumPeople以查看true和false切换。