J'ai écrit l'extrait de php suivant pour récupérer le taux de conversion de devises de Yahoo Finance. J'utilise curl pour récupérer les données. Supposons que je souhaite convertir des dollars américains (USD) en roupies indiennes (INR), l'URL est http://in.finance.yahoo.com/currency/convert?amt=1&from=USD&to=INR&submit= et la valeur de la roupie indienne est 45.225. Cependant, si je cours mon code, la valeur que j'obtiens est 452,25. Pourquoi cette divergence?PHP et curl pour aller chercher le taux de change de Yahoo Finance
<?php
$amount = $_GET['amount'];
$from = $_GET['from'];
$to = $_GET['to'];
$url = "http://in.finance.yahoo.com/currency/convert?amt=".$amount."&from=".$from."&to=".$to;
$handle = curl_init($url);
curl_setopt ($handle, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($handle);
if(preg_match_all('/<td class="yfnc_tabledata1"><b>(?:[1-9]\d+|\d)(?:\.\d\d)?/',$data,$matches))
{
print_r($matches[0][1]);
}
else
{
echo "Not found !";
}
curl_close($handle);
?>
Y at-il un problème avec mon regex?
réponse obligatoire: http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self -contenant-tags/1732454 # 1732454 –