我在互联网上搜索了针对我的具体问题的解决方案,但无济于事。
我正在尝试解码以下字符串:
\x3cdiv\x3e\x3cdiv style\x3d\x22padding-bottom:12px;padding-top:0px\x22 class\x3d\x22hwc kCrYT\x22\x3e\x3cdiv class\x3d\x22yStFkb\x22\x3e\x3cdiv class\x3d\x22Gx5Zad xpd EtOod pkphOe\x22\x3e\x3cdiv class\x3d\x22kCrYT\x22\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3eLG Optimus One P500 price in India starts from \x3cspan class\x3d\x22FCUp0c rQMQod\x22\x3e\u20b95,299\x3c/span\x3e.\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d\x22x54gtf\x22\x3e\x3c/div\x3e\x3cdiv class\x3d\x22kCrYT\x22\x3e\x3ca href\x3d\x22/url?q\x3dhttps://www.smartprix.com/mobiles/lg-optimus-one-p500-p133\x26amp;sa\x3dU\x26amp;ved\x3d2ahUKEwiXhre6zdCCAxUrkmoFHcPEARoQFnoECAMQBg\x26amp;usg\x3dAOvVaw2IXtrxhIz2KypXQY1-VkOj\x22 data-ved\x3d\x222ahUKEwiXhre6zdCCAxUrkmoFHcPEARoQFnoECAMQBg\x22\x3e\x3cspan\x3e\x3cdiv class\x3d\x22BNeawe vvjwJb AP7Wnd UwRFLe\x22 style\x3d\x22-webkit-line-clamp:2\x22\x3e\x3cspan class\x3d\x22rQMQod Xb5VRe\x22\x3eLG Optimus One P500 Price in India 2023, Full Specs \x26amp; Review | Smartprix\x3c/span\x3e\x3c/div\x3e\x3c/span\x3e\x3cspan\x3e\x3cdiv class\x3d\x22BNeawe UPmit AP7Wnd UwRFLe\x22 style\x3d\x22-webkit-line-clamp:2\x22\x3ewww.smartprix.com \u203a mobiles \u203a lg-opti...\x3c/div\x3e\x3c/span\x3e\x3c/a\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22P1NWSe\x22\x3e\x3cdiv class\x3d\x22wOMIed nkPlDb\x22\x3e\x3cspan class\x3d\x22JhFlyf VQFmSd\x22\x3e\x3ca class\x3d\x22f4J0H\x22 href\x3d\x22https://www.google.com/search?sca_esv\x3d583654954\x26amp;sxsrf\x3dAM9HkKmiEu1JuU2lrgOfiWibXbICyQENmA:1700415524431\x26amp;ei\x3dJEhaZZfkGaukqtsPw4mH0AE\x26amp;q\x3dWhat+is+the+price+of+LG+P500?\x26amp;sa\x3dX\x26amp;ved\x3d2ahUKEwiXhre6zdCCAxUrkmoFHcPEARoQzmd6BAgDEAc\x22 data-ved\x3d\x222ahUKEwiXhre6zdCCAxUrkmoFHcPEARoQzmd6BAgDEAc\x22\x3eMore results\x3c/a\x3e\x3c/span\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e
使用
stripcslashes
可以完成这项工作,但 ₹
符号未正确解码。
另一个更简洁的例子是这样的:
320\xd7480
它应该解码为
320×480
,但返回 320�480
。
有什么建议吗?
这是我修复它的方法
这取代了
\x00
和 \u0000
字符。我相信这些是 utf-16 或者什么?不知道。
$answer =
preg_replace_callback(
'/\\\u[A-f0-9]{4}|\\\x[A-f0-9]{2}/',
function($match){
if($match[0][1] == "u"){
return json_decode('"' . $match[0] . '"');
}else{
return mb_convert_encoding(
stripcslashes($match[0]),
"utf-8",
"windows-1252"
);
}
},
$accdefs_regex[2][$i]
);