PHP code example of overtrue / laravel-revaluation
1. Go to this page and download the library: Download overtrue/laravel-revaluation 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/ */
overtrue / laravel-revaluation example snippets
Overtrue\LaravelRevaluation\RevaluationServiceProvider::class,
use Illuminate\Database\Eloquent\Model;
use Overtrue\LaravelRevaluation\Traits\HasRevaluableAttributes;
class Order extends Model
{
use HasRevaluableAttributes;
// 1. Use the default valuator.
protected $revaluable = [
'total', 'paid_in', 'postage',
];
// 2. Use the specified valuator:
// protected $revaluable = [
// 'foo' => '\Foo\Support\Valuator\Foo',
// 'bar' => '\Foo\Support\Valuator\Bar',
// 'baz', // default valuator
//];
//...
}
$order = Order::find(1);
$order->total; // 345 (Db: 34500)
$order->raw_total; // 34500
$order->getRevaluatedTotalAttribute() or $order->revaluated_total; // Overtrue\LaravelRevaluation\Valuators\RmbCent
$order->revaluated_total->inYuan(); // 345.00
$order->revaluated_total->asCurrency(); // ¥345.00
// automatic setter.
$order->total = 123;
$order->save();
$order->total; // 123
$order->raw_total; // 12300
$order->revaluated_total->asCurrency(); // ¥123.00
// to array
$order->toArray();
//[
// 'total' => 12300,
// 'revaluated_total' => 123.0,
//]
protected $revaluatedAttributePrefix = 'display';
$order->total; // 123.0;
$order->raw_total; // 12300
$order->display_total->asCurrency(); // ¥123.00
// to array
$order->toArray();
//[
// 'total' => 12300,
// 'display_total' => 123.0,
//]
protected $appendRevaluatedAttributesToArray = false;
$order->total; // 123.0;
$order->raw_total; // 12300
$order->display_total->asCurrency(); // ¥123.00
// to array
$order->toArray();
//[
// 'total' => 12300,
//]
protected $replaceRawAttributesToArray = true;
$order->total; // 123.0;
$order->raw_total; // 12300
$order->display_total->asCurrency(); // ¥123.00
// to array
$order->toArray();
//[
// 'total' => 123.0,
//]