<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
		<id>https://wiki.nonip.net/index.php?action=history&amp;feed=atom&amp;title=Php%2Fzend_framework%2Fzend_amf</id>
		<title>Php/zend framework/zend amf - 変更履歴</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.nonip.net/index.php?action=history&amp;feed=atom&amp;title=Php%2Fzend_framework%2Fzend_amf"/>
		<link rel="alternate" type="text/html" href="https://wiki.nonip.net/index.php?title=Php/zend_framework/zend_amf&amp;action=history"/>
		<updated>2026-04-24T19:05:15Z</updated>
		<subtitle>このウィキのこのページに関する変更履歴</subtitle>
		<generator>MediaWiki 1.24.2</generator>

	<entry>
		<id>https://wiki.nonip.net/index.php?title=Php/zend_framework/zend_amf&amp;diff=509&amp;oldid=prev</id>
		<title>127.0.0.1: ページの作成:「バイナリで高速にflashとphpでやりとりを行えるライブラリです。  ==zendサンプル== controllerを作成  require_once APPLICATION_PATH . '/models...」</title>
		<link rel="alternate" type="text/html" href="https://wiki.nonip.net/index.php?title=Php/zend_framework/zend_amf&amp;diff=509&amp;oldid=prev"/>
				<updated>2015-05-19T18:13:12Z</updated>
		
		<summary type="html">&lt;p&gt;ページの作成:「バイナリで高速にflashとphpでやりとりを行えるライブラリです。  ==zendサンプル== controllerを作成  require_once APPLICATION_PATH . &amp;#039;/models...」&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;バイナリで高速にflashとphpでやりとりを行えるライブラリです。&lt;br /&gt;
&lt;br /&gt;
==zendサンプル==&lt;br /&gt;
controllerを作成&lt;br /&gt;
 require_once APPLICATION_PATH . '/models/amf/HelloWorldAmf.php';&lt;br /&gt;
 class AmfController extends Zend_Controller_Action&lt;br /&gt;
 {&lt;br /&gt;
     private $_server;&lt;br /&gt;
     public function init()&lt;br /&gt;
     {&lt;br /&gt;
         // ビュー無効化&lt;br /&gt;
         $this-&amp;gt;_helper-&amp;gt;viewRenderer-&amp;gt;setNoRender(true);&lt;br /&gt;
         // サーバー初期化&lt;br /&gt;
         $this-&amp;gt;_server = new Zend_Amf_Server();&lt;br /&gt;
     }&lt;br /&gt;
     public function helloAction()&lt;br /&gt;
     {&lt;br /&gt;
         $this-&amp;gt;_server-&amp;gt;setClass('HelloWorldAmf');&lt;br /&gt;
     }&lt;br /&gt;
     public function postDispatch()&lt;br /&gt;
     {&lt;br /&gt;
         // リクエスト処理&lt;br /&gt;
         $response = $this-&amp;gt;_server-&amp;gt;handle();&lt;br /&gt;
         // レスポンス返却&lt;br /&gt;
         echo $response;&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
モデルを作成&lt;br /&gt;
 class HelloWorldAmf&lt;br /&gt;
 {&lt;br /&gt;
     public function hello($value)&lt;br /&gt;
     {&lt;br /&gt;
         return $value . &amp;quot;World!&amp;quot;;&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
==as2サンプル==&lt;br /&gt;
 import mx.remoting.*;&lt;br /&gt;
 import mx.rpc.*;&lt;br /&gt;
 import mx.remoting.debug.NetDebug;&lt;br /&gt;
 //URL&lt;br /&gt;
 var gatewayUrl:String = &amp;quot;http://localhost/amf/hello&amp;quot;;&lt;br /&gt;
 //デバッグの初期化&lt;br /&gt;
 NetDebug.initialize();&lt;br /&gt;
 //PHPのHelloWorldクラスを呼ぶ&lt;br /&gt;
 var _service:Service = new Service(gatewayUrl, null, 'HelloWorldAmf', null , null);&lt;br /&gt;
 var pc:PendingCall = _service.hello(&amp;quot;Hello!&amp;quot;);&lt;br /&gt;
 pc.responder = new RelayResponder(this, &amp;quot;handleResult&amp;quot;, &amp;quot;handleError&amp;quot;);&lt;br /&gt;
 function handleResult(event:ResultEvent)&lt;br /&gt;
 {&lt;br /&gt;
  trace(event.result);&lt;br /&gt;
 }&lt;br /&gt;
 function handleError(event:FaultEvent)&lt;br /&gt;
 {&lt;br /&gt;
  trace(&amp;quot;エラー&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
==as3サンプル==&lt;br /&gt;
 import flash.net.NetConnection;&lt;br /&gt;
 import flash.net.ObjectEncoding;&lt;br /&gt;
 import flash.net.Responder;&lt;br /&gt;
 import flash.events.NetStatusEvent;&lt;br /&gt;
 // AMF3形式でデータを送る&lt;br /&gt;
 private function send():void {&lt;br /&gt;
   //（1-1）結果に応じたコールバック関数を登録したオブジェクト&lt;br /&gt;
   var responder:Responder = new Responder(_onSuccess, _onFailure);&lt;br /&gt;
   //（1-2）Zend_Amfとの接続のためのオプジェクト&lt;br /&gt;
   var nc:NetConnection = new NetConnection();&lt;br /&gt;
   nc.addEventListener(NetStatusEvent.NET_STATUS, _onNetStatus);&lt;br /&gt;
   //（1-3）Zend_AmfのURLを指定&lt;br /&gt;
   nc.connect('http://localhost/amf/hello');&lt;br /&gt;
   //（1-4）AMF3 でエンコードするように指定&lt;br /&gt;
   nc.objectEncoding = ObjectEncoding.AMF3;&lt;br /&gt;
   //（1-5）渡すデータを作成&lt;br /&gt;
   var params:DataAS = new DataAS;&lt;br /&gt;
   params = &amp;quot;Hello!&amp;quot;;&lt;br /&gt;
   //（1-6）Zend_AmfにgetHelloStringをリクエスト&lt;br /&gt;
   nc.call('HelloWorldAmf.hello', responder, params);&lt;br /&gt;
 }&lt;br /&gt;
 private function _onNetStatus(e:NetStatusEvent):void&lt;br /&gt;
 {&lt;br /&gt;
   trace(&amp;quot;サーバコネクションに失敗。(&amp;quot; + e.info.code + &amp;quot;)&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
 // 成功時の処理&lt;br /&gt;
 private function _onSuccess(ret:*):void {&lt;br /&gt;
   if (typeof ret == 'string') {&lt;br /&gt;
     //テキストエリアに帰って来た文字列を追加&lt;br /&gt;
     trace(ret);&lt;br /&gt;
   }&lt;br /&gt;
 }&lt;br /&gt;
 // サーバ処理時に失敗した時の処理&lt;br /&gt;
 private function _onFailure(ret:*):void {&lt;br /&gt;
   trace('サーバ処理時に失敗');&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
==参考==&lt;br /&gt;
[[flash/amfphp]]&lt;/div&gt;</summary>
		<author><name>127.0.0.1</name></author>	</entry>

	</feed>