Re: [問題] AS3 陣列(Array) 我搞不懂你阿 @@"

看板Flash作者 (星之影)時間16年前 (2010/04/23 10:05), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/4 (看更多)
感謝 Langrisser19 & aquarianboy 兩位的資訊!! 話說我太菜了... 所以我沒用過序列化... 使用 AMF PHP 也是因為要使用資料庫不得已才用的 XD 不過回應給了我兩條明路 序列化 & byteArray ※ 引述《langrisser19 (lenny)》之銘言: : : 記得amfphp回傳的不是物件嗎 目前測試 AMF PHP 回傳的東西可以設定的 不過如果回傳的是 "關連陣列" 就會變成 "物件" 沒錯 但是如果你陣列的 index 全部使用數字還是可以用普通Array回傳(第一個一定要0) 所以我是把查詢SQL後的資料用陣列傳回來沒錯 形態大概如下: 回傳陣列 resultArray = [ Obj1, Obj2, ......]; 每個 Obj 是獨立的關連陣列 ex: Obj1 = {name:"Employee 1", manager:false} 這一點也很奇妙... Flash 的陣列是可以建立關連陣列的 可是說明文件上卻很明顯的要你不要這樣用陣列 因為屬性會失效XD 如果想要建立關連陣列原廠的建議是使用物件去建立 (原文節錄如下) 請勿使用 Array 類別建立「關聯陣列」 (又稱為「雜湊」), 也就是包含已命名元素 (而非已編號元素) 的資料結構。 若要建立關聯陣列,請使用 Object 類別。 雖然 ActionScript 允許您使用 Array 類別建立關聯陣列, 您卻無法將關聯陣列與 Array 類別的所有方法或屬性搭配使用。 : 會不會是型別的問題錯了啊 : a0是陣列 a1是物件 : : 然後你這樣複製陣列怪怪的 : 如果陣列裡的元素是數值的話是可以用concat : 但要是裡面是物件的話就不行了,會變成只是參照而不是複製 意思是 concat 碰到物件不會複製阿? 那樣就很像 C 語言當中關連了XDDD 感覺是好事情阿 晚點再來測試看看 : : 推文有人說用序列化 序列化.... 沒用過XD 不過根據兩位大人的推文還有回文看來是必用阿 正在研究 byteArray 不過還看不懂@@" 請問能不能再詳細解釋一下 怎麼在 FLASH 做序列化? 怎麼在 AMF PHP 做序列化? 傳遞之後要怎麼用.... 感謝 ^^ : : 我自己就都是用這種方式 : 不管是傳值給後端 : 還是單純複製物件 : : 這是我的程式碼 : private function clone(source:Object):* { : var byteArray:ByteArray = new ByteArray(); : byteArray.writeObject(source); : byteArray.position = 0; : return (byteArray.readObject()); : } : 就丟進去什麼複製什麼 : : : 如果你要傳到後端 : 就把寫入後的byteArray用amfphp傳去後端吧 : 在php裡用file_put_contents([name], [data]) : 就可以把東西都存起來了 hmm... 我好像沒有需要封存資料 我傳資料給後端的目的是為了控制資料庫 ^^ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.25.241.138
文章代碼(AID): #1BqG1h2R (Flash)
文章代碼(AID): #1BqG1h2R (Flash)