1. Go to this page and download the library: Download krixon/rules library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
krixon / rules example snippets
public function generate(ComparisonNode $comparison) : Specification
class EmailAddressMatches implements Specification
{
private $email;
public function __construct(string $email)
{
$this->email = $email;
}
public function isSatisfiedBy($value) : bool
{
return $value instanceof User && $value->hasEmailAddress($this->email);
}
}
class MyCompiler extends BaseCompiler
{
public function generate(ComparisonNode $comparison) : Specification
{
$identifier = $comparison->identifierFullName();
if (strtolower($indentifier) !== 'email') {
throw CompilerError::unknownIdentifier($identifier);
}
if (!$comparison->isEquals()) {
throw CompilerError::unsupportedComparisonType($comparison->type(), $identifier);
}
return new EmailAddressMatches($comparison->literalValue());
}
}
public function attempt(ComparisonNode $comparison) : ?Specification;
$generator = new EmailAddressGenerator();
$compiler = new DelegatingCompiler($generator);
$generator = new EmailAddressGenerator();
$compiler = new DelegatingCompiler();
$compiler->register($generator, 100); // Priority of 100.
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.