このエントリーをブックマークに追加 このエントリをlivedoorクリップに追加 Yahoo!ブックマークに登録

cakephp1.2でXML形式のAPIをmodelとして使用する方法

2008年12月17日 by mikuta

cakephpには便利なXMLのパース関数があるので、それを使用する。
すげーラク、まさに「ゆとりプログラム」

app/models/yahoo.php
<?php
class Yahoo extends AppModel {

 var $name = 'Yahoo';
 
 // tableを使用しないという設定。
 var $useTable = false;
 
 // Yahoo!で取得するKEYを設定する。
 // app/confing/bootstrap.php に定義するのが無難か。
 var $appId = 'XXXXXXXXXXXXXXXXXXX';
 
 /**
  * web検索
  * http://developer.yahoo.co.jp/webapi/search/websearch/v1/websearch.html
  *
  */
 function webSearch( $word, $start = 1, $results = 10, $type = 'all', $format = 'any', $adult_ok = '1', $similar_ok = '', $language = 'ja', $country = '', $site = ''){
  $word = urlencode( $word);
  $req = "http://search.yahooapis.jp/WebSearchService/V1/webSearch?appid={$this->appId}&query={$word}$start={$start}&results={$results}&type={$type}&format={$format}&adult_ok={$adult_ok}&similar_ok={$similar_ok}&language={$language}&country={$country}&site={$site}";

  uses('Xml');
  $xml = new XML( $req);
  $respons = Set::reverse( $xml);
//  pr( $respons);
  return $respons;
 }

}
?>

Filed under , having  

0 コメント: