SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Adobe Developer Connection(AD)

Flex + LL連携(Ruby、Python、PHP)

  • このエントリーをはてなブックマークに追加

PHPを使う

 PHPには幾つかのAMF実装があります。

 今回はamfphpを取り上げます。AMFPHPは、非常に古くからあるPHPによるオープンソースのAMF実装です。現時点での最新版は、2008年1月20日にリリースされた「1.9 beta2」です。安定版の「1.2.4」は、AMF0は扱えるものの、Flash Player 9から登場したAMF3フォーマットを扱えません。AMF3フォーマットをサポートした版が、1.9 betaとして開発が続けられています。

 AMFPHPの特徴は、とても使いやすいことです。インストールは簡単ですし、「サービスブラウザ」という、サーバ側のサービスの一覧を閲覧するためのGUIが用意されており、より直観的に使うことができます。

AMFPHPのインストール:

 「amfphp-1.9.beta.20080120.zip」を、http://sourceforge.net/project/showfiles.php?group_id=72483#filesからダウンロードします。zipファイルを展開し、Webサーバのルートに移動させます。

※注

 展開先はルートでなくても構いませんが、説明を簡略化するためにルートに展開することとします。

 動作確認のため、http://localhost/amfphp/gateway.phpにアクセスしてみましょう。正常に動作していれば、以下のようなメッセージが表示されます。

AMFPHPでのサービスの実装:

 サービス用のクラスを作成し、メソッドを記述します。publicなメソッドは、自動的にサービスとして登録されます。privateなメソッドは、クライアント側から呼ぶことはできません。publicなメソッドでも、メソッド名が「_」で始まるものはprivateなメソッドと見なされ、同様に呼ぶことができないので注意して下さい。

HelloWorldService.php
HelloWorldService.php
<?php
class HelloWorldService
{
    public function hello($message)
    {
        return "World! [message from client: " . strtoupper($message) . "]";
    }
}
?>

 引数は1つで、ここには呼び出し側から任意の文字列を渡します。これを、サービス側で大文字に変換してから、呼び出し側に戻します。

AMFPHPでのサービスのデプロイ:

 サービスは、/amfphp/servicesディレクトリに配置します。Unixサーバにアップする場合は、ファイルの許可権を適切に設定して下さい。ディレクトリ構造は以下のようになります。

 AMFPHPには「サービスブラウザ」があり、servicesディレクトリ以下に配置したサービスの詳細をグラフィカルに確認することができます。先ほどの/amfphp/gateway.phpにアクセスし、「Load the service browser」をクリックして、「サービスブラウザ」を起動してみましょう。今配置した「HelloWorldService」のメソッド名や引数などが表示されるはずです。

 実際のコード例は以下のようになります。

AMFPHPのサービスの呼び出し:

 「クラス名.サービス名」をサービス名として指定し、呼び出します。今回の例では、「HelloWorldService.hello」です。

次のページ
Pythonを使う

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
Adobe Developer Connection連載記事一覧

もっと読む

この記事の著者

クラスメソッド株式会社 篠崎 大地(シノザキ ダイチ)

クラスメソッド株式会社(http://www.classmethod.jp/)所属テクニカルスペシャリスト。金融系システムのRIA化を得意とし、日々アーキテクチャー設計と実装に奮闘中。Adobe Certified Flex 2.0 Developer。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/4541 2009/11/04 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング