AS3とPHPの連携方法のサンプル。
今回は、PHP側から複数のデータを受け取ります。
サンプルはこちら。
以下、ソースです。
AS3側
package
{
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
import flash.net.URLRequest;
import flash.net.URLVariables;
import flash.text.TextField;
[SWF(backgroundColor="0xFFFFFF")]
public class php_access2 extends Sprite
{
public function php_access2()
{
// ステージの設定
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
// リクエストの準備
var req:URLRequest = new URLRequest("PHPファイルまでのパス");
// ローダー
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE, onComplete);
loader.load(req);
}
// 通信が成功したら実行される関数
private function onComplete(e:Event):void
{
var loader:URLLoader = e.target as URLLoader;
loader.removeEventListener(Event.COMPLETE, onComplete);
// 結果を表示
var t:TextField = new TextField;
t.width = 400;
t.text="PHPから年・月・日を受け取ります。\n\n";
addChild(t);
t.x = t.y = 10;
var data:URLVariables = new URLVariables(loader.data);
for(var key:String in data) t.appendText(key + "\t:\t" + data[key] + "\n");
}
}
}
PHP側
<?php // 時間を取得 $date = getDate(); $year = $date["year"]; $month = $date["mon"]; $day = $date["mday"]; // 出力 echo "year=".$year; echo "&"; echo "mon=".$month; echo "&"; echo "day=".$day; ?>