SimplePHPEasyPlus

A simple, pragmatic numeric operation api written in PHP. It does addition.

  • Owner: Herzult/SimplePHPEasyPlus
  • Platform:
  • License:: MIT License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

This awesome yet simple and pragmatic PHP library performs an addition of two numbers.

Build Status

In early stages of Internet, developers were forced to work with poor, dry, imperative, horrific languages.
Everything had to be done through austere functions and operators. There was no objects. No interfaces. No dependency injection.

For example, to make something as simple as an addition, our dads had to write: 1+1.
Yeah, really.

Hopefuly now, we have PHP 5.3 and its solid OOP implementation.
SimplePHPEasyPlus lets you make this addition in a more fashionable way, using real OOP.
It is fast, simple, flexible and tested. To add 1 to 1, all you have to do is:

use SimplePHPEasyPlus\Number\NumberCollection;
use SimplePHPEasyPlus\Number\SimpleNumber;
use SimplePHPEasyPlus\Number\CollectionItemNumberProxy;
use SimplePHPEasyPlus\Parser\SimpleNumberStringParser;
use SimplePHPEasyPlus\Iterator\CallbackIterator;
use SimplePHPEasyPlus\Operator\AdditionOperator;
use SimplePHPEasyPlus\Operation\ArithmeticOperation;
use SimplePHPEasyPlus\Operation\OperationStream;
use SimplePHPEasyPlus\Engine;
use SimplePHPEasyPlus\Calcul\Calcul;
use SimplePHPEasyPlus\Calcul\CalculRunner;


$numberCollection = new NumberCollection();

$numberParser = new SimpleNumberStringParser();

$firstParsedNumber = $numberParser->parse('1');
$firstNumber = new SimpleNumber($firstParsedNumber);
$firstNumberProxy = new CollectionItemNumberProxy($firstNumber);

$numberCollection->add($firstNumberProxy);

$secondParsedNumber = $numberParser->parse('1');
$secondNumber = new SimpleNumber($secondParsedNumber);
$secondNumberProxy = new CollectionItemNumberProxy($secondNumber);

$numberCollection->add($secondNumberProxy);

$addition = new AdditionOperator('SimplePHPEasyPlus\Number\SimpleNumber');

$operation = new ArithmeticOperation($addition);

$engine = new Engine($operation);

$calcul = new Calcul($engine, $numberCollection);

$runner = new CalculRunner();

$runner->run($calcul);

$result = $calcul->getResult();
$numericResult = $result->getValue(); // 2

This library is now available for production purposes. Enjoy!

Main metrics

Overview
Name With OwnerHerzult/SimplePHPEasyPlus
Primary LanguagePHP
Program languagePHP (Language Count: 1)
Platform
License:MIT License
所有者活动
Created At2010-12-06 19:02:12
Pushed At2020-10-02 06:36:38
Last Commit At2014-12-08 20:26:18
Release Count0
用户参与
Stargazers Count1.2k
Watchers Count40
Fork Count46
Commits Count84
Has Issues Enabled
Issues Count31
Issue Open Count29
Pull Requests Count16
Pull Requests Open Count4
Pull Requests Close Count2
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private