FC2ブログ

<?php
// 検索ワード
$Get_Keyword = ereg_replace("[  ]+", " ", trim($_GET['category_id']));
$Get_Keyword = mb_convert_kana($Get_Keyword, "n", "EUC-JP");

// category_idの確認
if(!(preg_match("/^[0-9]+$/", $Get_Keyword))){
exit("数字のみ");
}

// リクエストパラメータ
$Yahoo = "http://shopping.yahooapis.jp/ShoppingWebService/V1/reviewSearch";
$appid = "?appid="."60KCs9Oxg66wUlZO6NpaSWutKiZIbo8Hcl_GeITgOBmrr0zAgohOsS0rlHsah8q9BeLaIlp_9g--";
// $affiliate_type = "?affiliate_type="."";
// $affiliate_id = "&affiliate_id="."";
// $callback = "&callback="."";
// $jan = "&jan="."";
$category_id = "&category_id=".$Get_Keyword;
// $product_id = "&product_id="."";
// $person_id = "&person_id="."";
// $store_id = "&store_id="."";
$results = "&results="."10";
$start = "&start="."1";
$sort = "&sort="."";

// XML
$url = $Yahoo.$appid.$affiliate_type.$affiliate_id.$callback.$jan.$category_id.$product_id.$person_id.$store_id.$results.$start.$sort;
$xmldata = simplexml_load_file($url) or die("XMLパースエラー");
// debug
print $url."<br />";

$totalResultsAvailable = $xmldata['totalResultsAvailable'];
$totalResultsReturned = $xmldata['totalResultsReturned'];
$firstResultPosition = $xmldata['firstResultPosition'];

print $totalResultsAvailable."<br />";
print $totalResultsReturned."<br />";
print $firstResultPosition."<br />";

foreach($xmldata->Result as $value){
$Result_index = $value["index"];
$ReviewTitle = mb_convert_encoding($value->ReviewTitle, "EUC-JP", "UTF-8");
$Description = mb_convert_encoding($value->Description, "EUC-JP", "UTF-8");
$Url = $value->Url;
$Update = $value->Update;
$ReviewType = $value->ReviewType;
$Purpose = $value->Purpose;
$SendTo = $value->SendTo;
$Recommend = $value->Recommend;
$Ratings_Rate = $value->Ratings->Rate;
$Ratings_Average = $value->Ratings->Average;
$Count_All = $value->Count->All;
$Target_type = $value->Target["type"];
$Target_Name = mb_convert_encoding($value->Target->Name, "EUC-JP", "UTF-8");
$Target_Code = $value->Target->Code;
$Target_Url = $value->Target->Url;
$Target_Store_Id = $value->Target->Store->Id;
$Target_Store_Url = $value->Target->Store->Url;
$Target_Store_Name = mb_convert_encoding($value->Target->Store->Name, "EUC-JP", "UTF-8");
$Target_Image_Id = $value->Target->Image->Id;
$Target_Image_Small_Url = $value->Target->Image->Small->Url;
$Target_Image_Small_Width = $value->Target->Image->Small->Width;
$Target_Image_Small_Height = $value->Target->Image->Small->Height;
$Target_Image_Medium_Url = $value->Target->Image->Medium->Url;
$Target_Image_Medium_Width = $value->Target->Image->Medium->Width;
$Target_Image_Medium_Height = $value->Target->Image->Medium->Height;

print $Result_index."<br />";
print $ReviewTitle."<br />";
print $Description."<br />";
print $Url."<br />";
print $Update."<br />";
print $ReviewType."<br />";
print $Purpose."<br />";
print $SendTo."<br />";
print $Recommend."<br />";
print $Ratings_Rate."<br />";
print $Ratings_Average."<br />";
print $Count_All."<br />";
print $Target_type."<br />";
print $Target_Name."<br />";
print $Target_Code."<br />";
print $Target_Url."<br />";
print $Target_Store_Id."<br />";
print $Target_Store_Url."<br />";
print $Target_Store_Name."<br />";
print $Target_Image_Id."<br />";
print $Target_Image_Small_Url."<br />";
print $Target_Image_Small_Width."<br />";
print $Target_Image_Small_Height."<br />";
print $Target_Image_Medium_Url."<br />";
print $Target_Image_Medium_Width."<br />";
print $Target_Image_Medium_Height."<br />";
}

// カテゴリ
foreach($xmldata->Categories->Current as $value){
$Current_Id = $value->Id;
$Current_ParentId = $value->ParentId;
$Current_Url = $value->Url;
$Current_Title_Short = mb_convert_encoding($value->Title->Short, "EUC-JP", "UTF-8");
$Current_Title_Medium = mb_convert_encoding($value->Title->Medium, "EUC-JP", "UTF-8");
$Current_Title_Long = mb_convert_encoding($value->Title->Long, "EUC-JP", "UTF-8");
// カテゴリ
foreach($value->Path->Category as $category){
$Current_Category_depth[] = $category["depth"];
$Current_Category_Id[] = $category->Id;
$Current_Category_ParentId[] = $category->ParentId;
$Current_Category_Title_Name[] = mb_convert_encoding($category->Title->Name, "EUC-JP", "UTF-8");
}

print $Current_Id."<br />";
print $Current_ParentId."<br />";
print $Current_Url."<br />";
print $Current_Title_Short."<br />";
print $Current_Title_Medium."<br />";
print $Current_Title_Long."<br />";
// カテゴリ
for($i = 0; $i < count($Current_Category_Id); $i++){
print $Current_Category_depth[$i]."<br />";
print $Current_Category_Id[$i]."<br />";
print $Current_Category_ParentId[$i]."<br />";
print $Current_Category_Title_Name[$i]."<br />";
}
// 配列の削除
while(count($Current_Category_Id)){
array_pop($Current_Category_depth);
array_pop($Current_Category_Id);
array_pop($Current_Category_ParentId);
array_pop($Current_Category_Title_Name);
}
}

// 子カテゴリ
foreach($xmldata->Categories->Children->Child as $value){
$Children_sortOrder = $value["sortOrder"];
$Children_Id = $value->Id;
$Children_Url = $value->Url;
$Children_Title_Short = mb_convert_encoding($value->Title->Short, "EUC-JP", "UTF-8");
$Children_Title_Medium = mb_convert_encoding($value->Title->Medium, "EUC-JP", "UTF-8");
$Children_Title_Long = mb_convert_encoding($value->Title->Long, "EUC-JP", "UTF-8");

print $Children_sortOrder."<br />";
print $Children_Id."<br />";
print $Children_Url."<br />";
print $Children_Title_Short."<br />";
print $Children_Title_Medium."<br />";
print $Children_Title_Long."<br />";
}
?>


参考URL
Yahoo!デベロッパーネットワーク - ショッピング - 商品レビュー検索

appid アプリケーションID(必須)
affiliate_type Yahoo! JAPANアフィリエイト(yid)とバリューコマースアフィリエイト(vc)の選択。
affiliate_id Yahoo! JAPANアフィリエイトIDもしくは、バリューコマースアフィリエイトIDを入力。
callback JSONPとして出力する際のコールバック関数名をUTF-8でエンコードした文字列を入力
jan JANコード
category_id カテゴリID
product_id 製品ID
person_id 人物ID
store_id ストアのID
results 結果数指定 最大値は50件
start オフセット、何件目から表示させるか(1件目は1)
sort updatetime(更新時間順) review_rate(レビュー評価点順)

Result_index レビュー検索結果の順番
ReviewTitle レビューのタイトル文(例:購入しました!)
Description レビューの本文
Url レビューページのURL
Update レビューが更新された時間 YYYY-MM-DDTHH:mm:SS+09:00
ReviewType レビューの種類
buyer(購入者)/other(クチコミ)/all(全員)
Purpose 購入目的
daily(購入者)/hobby(趣味用途)/gift(プレゼント)/business(仕事用)
SendTo 誰用に購入したか
self(自分用)/family(家族親戚用)/friend(友人へ)/lover(彼氏彼女へ)/business(取引先へ)
Recommend レビューを見て役立った人の数
Ratings_Rate レビュー評価点
Ratings_Average レビュー平均点
Count_All レビュー数
Target_type レビューが書かれた対象の種類 item(商品)※商品のみ
Target_Name 商品名
Target_Code 商品コード
Target_Url 商品URL
Target_Store_Id ストアID
Target_Store_Url ストアURL
Target_Store_Name ストア名
Target_Image_Id 画像ID
Target_Image_Small_Url 76×76サイズの画像URL
Target_Image_Small_Width 画像(サムネイル)の幅
Target_Image_Small_Height 画像(サムネイル)の高さ
Target_Image_Medium_Url 146×146サイズの画像URL
Target_Image_Medium_Width 画像(サムネイル)の幅
Target_Image_Medium_Height 画像(サムネイル)の高さ
Current_Id カテゴリID
Current_ParentId 親カテゴリID
Current_Url URL
Current_Title_Short カテゴリ名
Current_Title_Medium カテゴリパス名1
Current_Title_Long カテゴリパス名2
Current_Category_depth トップからのカテゴリの深さ
Current_Category_Id カテゴリID
Current_Category_ParentId 親カテゴリID
Current_Category_Title_Name カテゴリ名
Children_sortOrder ソート順
Children_Id 子カテゴリID
Children_Url URL
Children_Title_Short カテゴリ名
Children_Title_Medium カテゴリパス名1
Children_Title_Long カテゴリパス名2
オンライン コンパイラ/インタプリタ
テクニカル分析
プロフィール

Author:雨宮
Firefoxを使用しているので気づかなかったけど、IE6でソースコードを上手くコピーできない

5/3
携帯用ならIE6でもソースコードをコピーできる
携帯用

検索フォーム


あわせて読みたいブログパーツ
一寸先は闇 RSS