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 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?