删除“&;nbsp&引用;在php中
使用此url,我们可以进行货币转换 这是结果:删除“&;nbsp&引用;在php中,php,curl,preg-replace,html-entities,Php,Curl,Preg Replace,Html Entities,使用此url,我们可以进行货币转换 这是结果:{lhs:“150欧元”,rhs:“1691.50299摩洛哥迪拉姆斯”,错误:,icc:true} 我尝试使用这个类似于json的结果。 所以我使用了json\u decode,但它不起作用 所以我认为它看起来像serilize/unserialize,所以我使用了unserialize,但它不起作用 紧张的是,我使用了regexp,最后我得到了dirhams中带有的值,因为该值在昏迷前得到了4个数字 这个我不能删除!我试着用preg_替换,str
{lhs:“150欧元”,rhs:“1691.50299摩洛哥迪拉姆斯”,错误:,icc:true}
我尝试使用这个类似于json的结果。
所以我使用了json\u decode
,但它不起作用
所以我认为它看起来像serilize/unserialize,所以我使用了unserialize
,但它不起作用
紧张的是,我使用了regexp,最后我得到了dirhams中带有
的值,因为该值在昏迷前得到了4个数字
这个
我不能删除!我试着用preg_替换,str_替换。。。不可能
这就是函数
我只想得到“dirhams值”,仅仅是浮点数
有人能帮我吗
public function convertDirhams($prix, $monnaie_base = 'euro', $monnaie_convert = 'dirhams')
{
$prix = urlencode($prix);
$monnaie_base = urlencode($monnaie_base);
$monnaie_convert = urlencode($monnaie_convert);
$url = "http://www.google.com/ig/calculator?hl=fr&q=$prix$monnaie_base=?$monnaie_convert";
$ch = curl_init();
$timeout = 0;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT , "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)");
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$rawdata = curl_exec($ch);
curl_close($ch);
/*$data = explode('"', $rawdata);
$data = explode(' ', $data['3']);
$var = $data['0'];*/
$data = preg_replace('/ /','',$rawdata);
$data = explode(':',$data);
$data = preg_replace('/"/','',$data[2]);
$data = preg_replace('/Moroccandirhams,error/isu','',$data);
$prix_final = preg_replace("/&#?[a-z0-9]{2,8};/i","",$data);
//echo $prix_final;
return (float)trim($data);
}
当我使用谷歌货币转换器时,我也遇到了这个问题。我尝试了很多东西,但都不管用。最后我找到了这段代码 您可以尝试以下方法:
$number = preg_replace('/[^a-z0-9.]/', '', $number);
或
两者都很好用
ereg_replace()
是php5.3中的折旧函数 json_解码有什么“不起作用”?(鉴于此代码中没有引用
,我高度怀疑这是这里的问题)尝试与@BillyONeal相同的方法,json\u decode()
应该可以工作。您有什么错误消息/结果?还有&nsbp当您在浏览器中选择此项时,会出现代码>,因为
1和
691之间的空格是**b**reaking**sp**ace上的**n**。这不是你的问题。@Billy:这不是有效的json。钥匙没有被引用。
$number = ereg_replace("[^A-Za-z0-9.]", "", $number );