PHP文件:
echo("var1=".$region);
echo("var2=".$realm);
echo("var3=".$type);
echo("var4=".$teamName);
echo("var5=".$battlegroup);
AS3文件:
public function returnResult(e:Event):void{
var _string = unescape(e.target.data);
trace(_string);
if(count == 50){
trace(e.target.data.var1);
trace(e.target.data.var2);
trace(e.target.data.var3);
trace(e.target.data.var4);
trace(e.target.data.var5);
}
else{
count++;
}
}
Flash返回:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
var1=euvar2=les-clairvoyantsvar3=5v5var4=wheres the dragonvar5=sturmangriff-charge
undefined
undefined
undefined
undefined
undefined
这应该是通过名字查找变量的简单情况,但由于某种原因它不起作用。
我在这里犯了一个非常愚蠢的错误吗?
答案 0 :(得分:0)
你从PHP回来的只是一个字符串(你跟踪它时可以看到)。只是输入“var =”实际上并没有做任何AS3可以理解的事情 - 它仍然是一个字符串,其值恰好是“var =”。由于您只是处理字符串,尝试访问var1,var2等属性将返回undefined,因为字符串没有这样的属性。
您可以构建自己的分隔符并根据该分隔符拆分字符串,例如使用字符串“:::”作为字符串中不同项之间的分隔符,并将字符串拆分为基于该数组的数组。或者,您可以通过这种方式发回结构化XML和访问属性,而不仅仅是发回非结构化文本。