gries/pokemath

一个PHP库,用于基于宝可梦的运算

19.10.31.1 2015-12-06 11:17 UTC

This package is auto-updated.

Last update: 2024-08-29 03:26:09 UTC


README

这个PHP库可以用来进行基于宝可梦的运算。

安装

Pokemath可以通过Composer进行安装

composer require "gries/pokemath"

重建类

在data/pokemon.csv中存储所有宝可梦数据。(701个宝可梦)要重建类,请执行。

php data/generator.php

用法

<?php

use gries\Pokemath\Numbers\Ivysaur;
use gries\Pokemath\Numbers\Jigglypuff;
use gries\Pokemath\Numbers\Snorlax;
use gries\Pokemath\Numbers\Venusaur;
use gries\Pokemath\Numbers\Wigglytuff;

require_once __DIR__ . '/../vendor/autoload.php';


// small calculation
$ivy = new Ivysaur();
$venu = new Venusaur();

echo $ivy->add($venu)->value()."\n"; // -> charmander

// big calculation
$jiggly = new Jigglypuff();
$wiggly = new Wigglytuff();

echo $jiggly->multiply($wiggly)->value()."\n"; // -> ivysaur-chespin


// make it even bigger
$snorlax = new Snorlax();
echo $snorlax
        ->multiply($snorlax)
        ->multiply($snorlax)
        ->multiply($snorlax)
        ->multiply($snorlax)
        ->multiply($snorlax)
        ->value()."\n"; // -> nidorino-sandslash-klinklang-drifloon-gothita
        
// make calculations

$calculator = new \gries\Pokemath\PokeCalculator();

$expression = '(ivysaur + ivysaur) * ivysaur#ivysaur';
$result = $calculator->calculate('(ivysaur + ivysaur) * ivysaur#ivysaur');

echo $expression."\n";                                                  
// -> (ivysaur + ivysaur) * ivysaur#ivysaur
echo $calculator->translate($expression);                              
echo ' = '.$result->value(). '('.$result->asDecimalString().")\n";      
// -> (1 + 1) * 701 = venusaur#venusaur(1402)

作者

许可

有关完整的版权和许可信息,请参阅与源代码一起分发的LICENSE文件。