您要做的是在您要使用此模板文件的块中注入“ PriceCurrencyInterface ”。
template.phtml
<div><?= $block->getFormatedPrice('342.4345') ?>
Item.php(以上模板的Block类……可能是这样)
<?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);
}
这具有基于当前商店区域设置显示正确格式的附加好处。它还提供了其他可能有用的方法,请检查一下...
确保可以检查方法签名,因为您可以配置要显示的结果,例如容器和精度。
priceCurrency->convertAndFormat($amount, $includeContainer, $precision)
干杯!