2012-10-04 41 views
0

當通過GET與PHP腳本進行通信時,我需要一個反饋,通常格式如下:status = OK & msg =沒有進一步的動作& other = blablabla ...所以我知道是一個成功的要求。但是AS3是非常面向對象的,所以我做了一個類來把它放在一個對象:用於讀取GET變量的AS3類

package com.gustavopi.comm { 

    public class Vars { 

     public var demo:String = new String(); 
     public var Obj:Object = new Object(); 
     public var Var:Array = new Array(); 
     public var Val:Array = new Array(); 
     public function Vars(strVars:String=null) { 
      var Termos:Array = strVars.split("&"); 
      for(var t in Termos){ 
       var termo:String = Termos[t]; 
       var Elem:Array = termo.split("="); 
       Obj[Elem[0]] = Elem[1]; 
       Var.push(Elem[0]); 
       Val.push(Elem[1]); 
       demo += Elem[0]+": "+Elem[1]+String.fromCharCode(13); 
      } 
     } 

    } 

} 

的優點是使用「演示」的方法,快速檢測錯誤,但瓦爾是obj的性質,不是的對象本身,這有點奇怪 - 但工作。

我不確定這是處理任務的最佳方式,還是我做了一些已經存在於AS3內核中的東西。你有什麼想法?

回答

1

首先,你的變量應該以小寫字母開頭,而類以大寫字母開頭。

有幾種方法可以從服務器獲取一些數據,你是最簡單也是最老的一個。它通常與AS2一起使用。這就是爲什麼已經有一個類來處理這個問題:

var urlVariables:URLVariables = new URLVariables("firstName=Tom&lastName=Jones"); 
trace(urlVariables.lastName + "," + urlVariables.firstName); 
//will trace "Jones,Tom" 

退房的AS3 URLVariables class

+0

你說得對。這門課實際上非常靈活,非常方便。 – inhan

+0

你怎麼知道我是舊的AS2編碼器?你的解決方案是在我的鼻子下面,因爲我用它來發送變種,但不知道它可以用來將變種接收到物體中。謝謝!關於大寫字母:我喜歡將它用於對象和數組,但在這種情況下很奇怪 - 現在已經太晚了...... – Gustavo