dreamwind1985 2019-06-19 12:34
浏览 44
已采纳

strip_tags + html实体只获取数字

I would like to remove everything but the amount as a float from this string:

<span class="woocommerce-Price-amount amount"><span class="woocommerce-Price-currencySymbol">&#8362;</span>700.00</span>

I tried:

  1. strip_tags( $total_price_paid ); - Not enough.
  2. strip_tags( html_entity_decode( $total_price_paid ) ); - it decodes the entity into a symbol, i tried preg_replace after and it didn't work.
  3. preg_replace( '/[^0-9]/', '', $value ); - Doesn't get rid of html entity

None of those achieved a result of 700.00 formatted as a float.

Can anyone help please?

Thanks!

  • 写回答

3条回答 默认 最新

  • duanchoupo1104 2019-06-19 12:42
    关注

    You need to remove also the special pieces of text used to define entities, so you need at least another pass:

    $total_price_paid = strip_tags($total_price_paid);
    $total_price_paid = preg_replace("/&#?[a-z0-9]{2,8};/i", "", $total_price_paid); 
    

    Code snippet is available here.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 目详情-五一模拟赛详情页
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line