Những gì bạn muốn làm là đưa " PriceCurrencyInterface " vào Khối tệp mẫu mà bạn muốn sử dụng.
mẫu.phtml
<div><?= $block->getFormatedPrice('342.4345') ?>
Item.php (Block Class của mẫu trên ... bất cứ điều gì có thể)
<?php
namespace \Whatever
use Magento\Framework\Pricing\PriceCurrencyInterface;
use Magento\Framework\View\Element\Template;
class Item extends Template
{
/** @var PriceCurrencyInterface $priceCurrency */
protected $priceCurrency;
public function __construct(
Template\Context $context,
PriceCurrencyInterface $priceCurrency,
array $data = []
) {
parent::__construct($context, $data);
$this->priceCurrency = $priceCurrency;
}
/**
* Function getFormatedPrice
*
* @param float $price
*
* @return string
*/
public function getFormatedPrice($amount)
{
return $this->priceCurrency->convertAndFormat($amount);
}
Điều này có thêm lợi ích của việc hiển thị định dạng chính xác dựa trên ngôn ngữ cửa hàng hiện tại. Nó cũng cung cấp các phương pháp khác có thể hữu ích, hãy kiểm tra chúng ...
Đảm bảo kiểm tra chữ ký phương thức vì bạn có thể định cấu hình kết quả bạn muốn hiển thị, chẳng hạn như vùng chứa và độ chính xác .
priceCurrency->convertAndFormat($amount, $includeContainer, $precision)
Chúc mừng!