2011-12-21 55 views
3

任何人都可以为PHP规则教程提供一个很好的链接吗?需要PHP规则教程

我目前发现只有一条:

但这个环节并没有真正提到如何在我们的应用程序中使用它。而且,在例如他们已经采取了解释不具有输出等..

+0

你的问题在哪里? :O –

+0

任何人都可以为PHP规则教程提供一个很好的链接。他正在寻找额外的学习资源(虽然这不是一个真正的编程问题,但并不是不合理的)。 – calumbrodie

回答

4

这里有一些链接:

似乎没有要在PHP的规则很多教程Ø但在使用方面它也应该相当简单。如果你对代码示例有特定的问题,你可能会得到更好的答案,并能够推进事情。

此外,我建议您联系作者,Greg Swindle,因为他可能会为您提供其他教程。

+0

github港口真棒!它与原文有些不同,所以官方文档不会100%准确,但它的作用就像是一种魅力。感谢您的回答。这帮了我很多! – gian1200

1

我已经放了几个小时到规则引擎,最后得到了关键的工作......这根本不清楚我的所有方向在那里,所以我想这可能有助于有人辩论是否或不要使用php规则。

为了让PHP排除了笨的简单和更容易控制使用

第1步:从The PHP Rules Download Page

步骤2下载软件包:解压缩文件,并复制文件夹中的php-规则 - 示例/系统/应用程序/库/ Phprules到您的PHP服务器上的某个地方。

步骤3:通过注释掉每个文件顶部的已定义或死亡语句,并在Rule.php中注释掉其中有大写CI的3行注释掉Phpules文件夹中的所有文件。

所有文件:
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来观察真正的切换。