为了账号安全,请及时绑定邮箱和手机立即绑定

str替换不适用于美元符号和html标签

str替换不适用于美元符号和html标签

PHP
拉风的咖菲猫 2022-10-09 20:17:36
我正在尝试替换此字符串中的一些文本(在 $ 登录 ins 标记之前添加 US)ex-$mystring='<del><span class="woocommerce-Price-amount amount"><span class="woocommerce-Price-currencySymbol">$</span>49.00</span></del> <ins><span class="woocommerce-Price-amount amount"><span class="woocommerce-Price-currencySymbol">$</span>39.00</span></ins>'; echo str_replace('<ins><span class="woocommerce-Price-amount amount"><span class="woocommerce-Price-currencySymbol">$</span>39.00</span></ins>','<ins><span class="woocommerce-Price-amount amount"><span class="woocommerce-Price-currencySymbol">US$</span>39.00</span></ins>',$mystring);但它似乎根本没有替换,我知道有 woocmmerce 函数可以添加前缀但我需要这个而不使用那些,任何人都知道如何解决此问题或更好的方法。谢谢你我们的输出应该是当前的输出是49 美元39 美元输出应该是49 美元39 美元
查看完整描述

1 回答

?
墨色风雨

TA贡献1853条经验 获得超6个赞

请看一下,它将根据您所需的输出将最后出现的 $ 替换为 US$。


$mystring='<del>

<span class="woocommerce-Price-amount amount">

<span class="woocommerce-Price-currencySymbol">$</span>49.00</span></del>

<ins><span class="woocommerce-Price-amount amount"><span class="woocommerce-Price-currencySymbol">$</span>39</span></ins>';


echo str_lreplace('$','US$',$mystring);

function str_lreplace($search, $replace, $subject)

{

    $pos = strrpos($subject, $search);


    if($pos !== false)

    {

       $subject = substr_replace($subject, $replace, $pos, strlen($search));

    }


    return $subject;

}


查看完整回答
反对 回复 2022-10-09
  • 1 回答
  • 0 关注
  • 86 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信