In PHP possiamo gestire la tassazione in uso in un e-commerce utilizzando l'approccio OOP.
Iniziamo col definire una classe astratta:
abstract class Tax {
abstract protected function add($amount);
abstract protected function getAmountValue($value);
}
Volendo gestire l'aggiunta e il calcolo dell'IVA possiamo creare la seguente classe concreta:
class Vat extends Tax {
private $value;
public function __construct($val = 22) {
$this->value = ( $val / 100 ) + 1;
}
public function add($amount) {
return ($this->value * $amount);
}
public function getAmountValue($value) {
$tax_value = $this->add($value);
return ($tax_value - $value);
}
}
La classe concreta deve implementare tutti i metodi astratti definiti a livello di firma nella classe astratta. Nel nostro caso i due metodi calcolano il valore con IVA di un totale e la differenza tra tale valore e il valore originale.