使用阿拉伯语时数字会颠倒

时间:2018-10-08 04:15:24

标签: javascript php html laravel laravel-localization

我正在使用laravel本地化

这是我正在使用的代码

<p class="retail-price">@lang('frontend/watch-detail.Reference.retail')
     <span class="prices">
     @if($watch['price'] == 0 || $watch['price'] == NULL) N/A

     @else
         @php
         $text =number_format($watch['price'], 0, ',', ' ');
         @endphp
         {{$text}}
     @endif
     </span>
</p>

这就是我用阿拉伯语=> Image that I get

我应该得到30 700!

我不想使用反向功能

2 个答案:

答案 0 :(得分:1)

发生此问题是因为从右到左阅读阿拉伯语。添加if语句以检查其 是否为阿拉伯语,然后将其反转会更容易,因此反转的阿拉伯语文字也可以反转为非反转。

答案 1 :(得分:1)

您可以将文本包装在bdo element中,并将其定义为从左到右:

function changeDir() {
  var el = document.getElementById('bdo0');
  el.dir = el.dir == 'ltr'? 'rtl':'ltr';
  document.getElementById('theDir').textContent = el.dir;
}
<div dir="rtl">هذا رقم: <bdo id="bdo0" dir="ltr">123 456 789</bdo></div>
<button onclick="changeDir()">Change direction</button><span id="theDir"></span>

您不需要任何页内脚本,它应该只是HTML。