Ben yahoo geliştiriciler web sitesinde bulunabilir yönergeleri kullanarak, benim API anahtarı ile yahoo sonuçlarını almak mümkün. http://developer.yahoo.com/boss/search/boss_api_guide/codeexamples.html#Ayrıştırma JSON PHP ile Sonuçları - Yahoo Search API
Kodu:
if ($_POST['query'])
{
$newline="<br />";
$query = urlencode("'{$_POST['query']}'");
require("OAuth.php");
$cc_key = "key goes here";
$cc_secret = "secret goes here";
$url = "http://yboss.yahooapis.com/ysearch/web";
$args = array();
$args["q"] = "$query";
$args["format"] = "json";
$consumer = new OAuthConsumer($cc_key, $cc_secret);
$request = OAuthRequest::from_consumer_and_token($consumer, NULL,"GET", $url, $args);
$request->sign_request(new OAuthSignatureMethod_HMAC_SHA1(), $consumer, NULL);
$url = sprintf("%s?%s", $url, OAuthUtil::build_http_query($args));
$ch = curl_init();
$headers = array($request->to_header());
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$rsp = curl_exec($ch);
$results = json_decode($rsp);
print_r($results);
}
yukarıda gösterildiği gibi print_r ($ sonuçlar) kullanarak, örneğin "fil aramaya gelen gösterilen ilk üç sonuçları aşağıdaki (özü olarak sonuçları almak Ben fAZLA 2 bağlantıları yazılan EN AZINDAN 10 iTİBAR GEREKTİREN GİBİ 'WWW: ")
Ben İÇİN URLLERİ DEĞİŞTİ LÜTFEN DİKKAT'.
stdClass nesnesi ([bossresponse] => stdClass nesne ([ResponseCode] => 200 [web] => stdClass nesne ([start] => 0: [sayısı] => 50: [totalresults] => 36800000 [sonuçlar] => Array ([0] => stdClass Nesne ([tarih] => [clickurl] => WWW [url] => WWW [dispurl] => en.wikipedia.org/wiki/Elephant [ başlık] => Fil - Vikipedi, ücretsiz ansiklopedi [soyut] => Fil gövdeleri, nefes alma, koku alma, dahil olmak üzere birden fazla fonksiyonuna sahiptir ... Bir filin ön ayakları üzerinde diz çökerek otlattığı gözlenen olmuştur ...) [1] => stdClass Nesne ([tarih] => [clickurl] => WWW [url] => WWW [dispurl] => www.defenders.org/elephant/basic-facts [title] => Fil | Temel Filler Hakkında Gerçekler | Yaban Hayatı savunucuları [soyut] => Fil. Filler Hakkında Temel Bilgiler Fil Hakkında Daha Fazlası: Fillere Tehditler » Fil hakkında daha fazlası: Temel Bilgiler. Tehditler. Savunucuların Yardımına Ne Yapıyor? Ne Yapabilirsiniz ...) [2] => stdClass Nesnesi ([tarih] => [clickurl] => WWW [url] => WWW [dispurl] => kids.nationalgeographic.com/.../zenci-fil [title] => Afrika fil Gerçekler ve Resimler - National Geographic Çocuk [soyut] => fotoğraf, video, ses, eğlenceli gerçekler, bir e-posta kartpostal ve bağlantılar ile filler hakkında Kids' özelliği diğer hayvanlara.) [3] => stdClass Nesnesi ([tarih] => [clickurl] => WWW [url] => WWW [dispurl] => elephant.elehost.com/About_Elephants/about_elephants.htm [title] => Filler Hakkında [abstract] => Fil Bilgi Deposu'ndaki filler hakkında herşey Bu sayfa'in bir özetini içerirfil ile ilgili gerçekleri, filler dünyasına sokmak için.aşağıdaki gibi)
Ben, okunaklı bir biçimde, çıkış sonuçları çalıştılar:
Kod Denemesi 1: Ben de başarılı olamadı aşağıdakileri denedim
foreach ($results->{ 'results' } as $item)
{
echo "<a href=\"{$item->{ 'url' }}\"><font color ='blue'>{$item->{ 'title' }}</font></a>".": "."$newline"."$newline".$item->{ 'abstract' }."\n\n";
}
:
Kod Denemesi 2:
echo $results['results']['url'];
echo $results['results']['title'];
echo $results['results']['abstract'];
Ne yapılacağı hakkında bir fikrin var mı?
Teşekkürler.
kullanımını birleştirmek "json_decode ($ json, doğru); " stdClass nesnesinden kurtulmak için Nesne – cptnk
Sonuçların bana ulaştığını görmek beni $ sonuçları-> bossresponse-> web-> results' –