google の検索結果とかを ajax 使って即時画面に展開する分には javascript で簡単に出来るようですが(ぇ php を使ってその検索結果を mysql に入れたり出したり加工して画面に出すにはちょっと勝手が違うみたいでここ数日頭を抱えていた。

以下の方法で google api が出力する json データを php の配列に取り込める事が判ったのでメモをしておこう。

手順としては
1. 検索キーワードを urlencode でエンコードする
2. エンコードしたキーワードを含めた問合せ url を作る
3. file_get_contents で url を呼び出してその結果(jsonデータ)を変数に格納
4. 変数にいれた結果(jsonデータ)を json_decode で配列に格納
5. 好きにして (*´Д`)ハァハァ

[php]
<?php
$keyword = "グンマー";
$keyword = urlencode ($keyword);
$url = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&rsz=large&hl=ja&q=".$keyword;

$json_desc = file_get_contents ($url);
$arr_desc = json_decode ($json_desc);
$dsc = $arr_desc->responseData->results;

print_r ($dsc);
?>
[/php]

[2012/07/18 追記]
上の php を動かすと以下のような配列にデータが入るので
$url = $dsc[0]->url という感じで後は好きにするといい。

[php]
Array
(
[0] => stdClass Object
(
[GsearchResultClass] => GwebSearch
[unescapedUrl] => http://b.hatena.ne.jp/entry/www.ktsys.jp/wp/?p=1474
[url] => http://b.hatena.ne.jp/entry/www.ktsys.jp/wp/%3Fp%3D1474
[visibleUrl] => b.hatena.ne.jp
[cacheUrl] => http://www.google.com/search?q=cache:TkKMyEW-uKQJ:b.hatena.ne.jp
[title] => はてなブックマーク – google web font というものを使ってみた | と~とと <b>…</b>
[titleNoFormatting] => はてなブックマーク – google web font というものを使ってみた | と~とと …
[content] => 4 日前 <b>…</b> 今更ながら google web font をこのブログに入れてみた。 インターネットのブラウザ というのはそもそもそれを起動している pc の中にあるフォントを使って画面に文字を 表示しているのだが、それだと mac や windows または linux などで使用 <b>…</b>
)
)
[/php]

By 🐬とぅとと🐬

わしです、とぅととです。アニメ ニュース・天気実況、自炊、家庭菜園、多少の鉄分 縄文文明研究家(自称) WEB系SE *Unityも少しやってる C# BayFM78 聴く 2014年〜千葉県民 2005 Demio 乗り 急性心筋梗塞をやっちまった(2020年02月) その後→ ねんがんの りもうとわあく を てにいれた