ActionScript

ActionScriptからPHPの関数を実行。

2010.02.07 / Labs

ActionScriptからPHPを実行するには、「URLLoader」を使ってPHPファイルにアクセスすることができます。その際に引数を渡すには「URLVariables」でGET、またはPOSTの変数を渡すことができます。
この方法では、アクセスするPHPファイル全体を実行します。

 

PHPファイル内の任意の関数のみを実行するには、ActionScriptからGET、またはPOSTの変数を経由し、PHPの関数名の文字列を変数で渡して、PHP側で文字列を関数名として評価することで任意の関数を実行できます。

 

ActionScriptでは、次のように記述します。(ドキュメントクラスに書いています)

PHPファイル「functions.php」にPOST変数で関数名「function_name」を文字列で渡します。PHPファイルの読み込み(実行)が完了したら「onComplete」にて、PHPで出力された文字列「event.target.data」を扱えるようになります。

 

PHPファイル「functions.php」には、次のように記述します。

「$function」にPOST変数の「function_name」を代入して、同名の関数が存在していたら実行します。
PHPから出力された文字列は、そのままActionScriptで受け取ることができます。

SWFを表示しているURLの取得方法。

2010.02.06 / Notes

ActionScriptでSWFの置かれているパスではなく、実際に表示されているページのパスを取得するにはJavaScript、またはPHPとの連携で可能になります。

Javascriptの場合

ActionScriptからJavascriptの関数を実行する「ExternalInterface」で行えます。
HTML内に、パスの値を返すJavaScriptの関数を加えます。

ActionScriptではJavaScriptの関数を実行して、戻り値を変数に格納します。

PHP(&FlashVars)の場合

PHPでActionScriptに値を渡すには、FlashVarsを利用する方法が簡単です。
PHP内のFLASH埋め込みのコード内に、PHPで動的に取得したパス情報を、FlashVars経由でSWFに渡します。

ActionScriptではFlashVarsの値を「loaderInfo.parameters」で取り出します。

ボタンのロールオーバー、ロールアウト、クリックの設定。

2010.01.15 / Notes

ボタンオブジェクトに対して、ロールオーバー、ロールアウト、クリックをまとめて設定するスクリプトです。
ロールオーバー、ロールアウト、クリックのイベントリスナーごと、関数内に記述して、内包しているリスナーの関数を実行しています。リスナーの関数は一つだけ書いて、イベントタイプの文字列で振り分けるようにしています。

イベントリスナーで引数を渡す方法。

2010.01.13 / Notes

マウスのクリック時などのイベントリスナーで、追加の引数を渡す方法です。
通常イベントリスナーから呼び出すリスナーの関数には引数を渡すことができませんが、次の方法で任意に渡すことができます。

イベントリスナーから呼び出す関数の戻り値に、イベントオブジェクトを引数とする関数を返すことで、引数を受け取ることが可能になります。
上記のスクリプトでは無名関数にしているので少し読みづらいですが、書き換えると次のようになります。

ActionScriptで配列のシャッフル。

2010.01.12 / Notes

配列の順番をランダムにソートしてシャッフルを行うスクリプトです。