PHP&尽管数据显示正确的信息,AS3返回'undefined'

时间:2012-08-19 01:42:20

标签: php actionscript-3 actionscript

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

这应该是通过名字查找变量的简单情况,但由于某种原因它不起作用。

我在这里犯了一个非常愚蠢的错误吗?

1 个答案:

答案 0 :(得分:0)

你从PHP回来的只是一个字符串(你跟踪它时可以看到)。只是输入“var =”实际上并没有做任何AS3可以理解的事情 - 它仍然是一个字符串,其值恰好是“var =”。由于您只是处理字符串,尝试访问var1,var2等属性将返回undefined,因为字符串没有这样的属性。

您可以构建自己的分隔符并根据该分隔符拆分字符串,例如使用字符串“:::”作为字符串中不同项之间的分隔符,并将字符串拆分为基于该数组的数组。或者,您可以通过这种方式发回结构化XML和访问属性,而不仅仅是发回非结构化文本。