いちプログラマーのメモ帳

いちプログラマーのメモ帳

プログラムやサーバの設定など、メモ的に書き留めておく場所にしたいと思います。

Amebaでブログを始めよう!

AmazonAPIを使ったAndroidアプリを作ろうと考え付いて、商品のジャンル一覧を

取得したいと思っていろいろ探してみたら、見事に発見しました。(さすがAmazon!!)


忘れないようにメモ!!



まず、OperationをBrowseNodeLookupに設定。


次に、調べたい商品のジャンルのIDを設定する。


たとえば、日本の本のルートジャンルを調べたいなら、BrowseNodeId=465610とすれば、

ジャンルの番号とキーワードの一覧を取得できる。


まとめると、以下のようなリクエストで取得できる。


http://ecs.amazonaws.jp/onca/xml?Service=AWSECommerceService&AWSAccessKeyId =アクセスキー&Version=2009-03-31&Operation=BrowseNodeLookup&BrowseNodeId=465610&Timestamp=タイムスタンプ&Signature=シグネチャー


ついでに、ここ でBrowseNodeIdのルートの一覧が取得できる。

PHPの機能で、便利なものを発見したからメモ。


変数を可変的に使用することが出来る。



例)
$a = "hallo";
$$a = "world";

こうやって記述すると…

変数$aに、値"hallo"を代入

変数$halloに、値"world"を代入

と言うことになる。


さらには、関数も同じように呼ぶことが出来る。


例)
$a = "test":
$$a("hallo world");

function test($x){
  print $x;
}

これで、test関数が呼び出されて、"hallo world"が表示される


最後に、クラスのメソッドを呼ぶ時


例)
$myClass = new TestClass();
$functionName = "test";
$myClass->$functionName("hallo world");

class TestClass{
  public function test($x){
    print $x;
  }
}

こんな感じで、クラスのメソッドを呼ぶことも出来る。

ちなみに、関数があるかどうかは、function_exists('関数名')

クラスのメソッドがあるこどうかは、method_exists('オブジェクト', 'メソッド名')で、

確認することが出来る。


これは、post・sesstionのデータのやりとりや、クラスのアクセサ(get・set)ほか、可変変数と併せると

色々な場面で使える気がする!!


ただ、関数については、call_user_func_array・call_user_func・call_user_method

などなど、関数を呼び出す命令がいっぱいあるらしい…


果たしてどれが一番いいのか…

個人的には、命令じゃなくて可変してくのが作りやすい気がする。

・Xdebugのダウンロード


-公式サイト(http://www.xdebug.org/download.php)、 から自分に適切なバージョンのDLLをダウンロードする。

もしどれをダウンロードするかわからない時は、ここ に、phpinfo()のHtmlを貼り付けて、”Analyse my phpinfo() output”をクリックすると正しいものがダウンロード出来ます。


-適当なフォルダにダウンロードしたDLLを入れておく。(例:C:\php\ext)


・PHP.iniの設定変更


-上の例の場所にDLLを配置した場合、次の設定を追加する。

zend_extension_ts = C:/php/ext/php_xdebug-2.1.0-5.2-vc6.dll
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost(Hostname)
xdebug.remote_port=9000


いちプログラマーのメモ帳-xdebug


こうなったら成功