Nije API, ali radi, barem za mene
http://webarto.com/80/did-you-mean-api
Najbolje je učitati preko AJAX posle pretrage, recimo ako ukuca "cannon" vjerovatno je da neće dobiti što traži. Takože "20d" i "20 d" su za SQL različite stvari, naravno ima načina i to da se sredi ali kad već ima Google...
PHP kôd:
/**
* @author Webarto.com
* @copyright 2011
* @url http://webarto.com/
* @version 0.1
*/
class DYM{
function check($query){
$url = "http://www.google.com/search?q=".str_replace(" ", "+", $query);
$html = $this->curl($url);
preg_match('#spell>(.*?)</a>#is', $html, $matches);
if($matches){
$spell = strip_tags($matches[1]);
return $spell;
}
}
private function curl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
return curl_exec($ch);
curl_close ($ch);
}
}
Upotreba:
PHP kôd:
$q = urldecode($_GET["q"]); //nikon eos 20d
$dym = new DYM;
$spell = $dym->check($q);
if(!empty($spell)){
echo "Did you mean: $spell"; //Did you mean: canon eos 20d
}