Php 如何从URL编码的字符串获取数组?
我相信这是一件非常简单的事情,但我在谷歌上好几个小时都找不到它。 我是ActionScript新手,我正在尝试从由.php文件生成的字符串中获取变量数组 我的php文件输出以下内容:Php 如何从URL编码的字符串获取数组?,php,arrays,actionscript-3,urlvariables,Php,Arrays,Actionscript 3,Urlvariables,我相信这是一件非常简单的事情,但我在谷歌上好几个小时都找不到它。 我是ActionScript新手,我正在尝试从由.php文件生成的字符串中获取变量数组 我的php文件输出以下内容: var1=42&var2=6&var3=string 我的动作脚本代码是: public function CallAjax_VARIABLES(url:String , the_array:Array) { var request:URLRequest = new URLRequest(u
var1=42&var2=6&var3=string
我的动作脚本代码是:
public function CallAjax_VARIABLES(url:String , the_array:Array)
{
var request:URLRequest = new URLRequest(url);
var variables:URLLoader = new URLLoader();
variables.dataFormat = URLLoaderDataFormat.VARIABLES;
variables.addEventListener(Event.COMPLETE, VARIABLES_Complete_Handler(the_array));
try
{
variables.load(request);
}
catch (error:Error)
{
trace("Unable to load URL: " + error);
}
}
function VARIABLES_Complete_Handler(the_array:Array):Function {
return function(event:Event):void {
var loader:URLLoader = URLLoader(event.target);
//the_array = loader.data; // this doesn't work.
//the_array = URLVariables.decode(loader); // this doesn't work either.
//trace(loader.data['var1']); // this outputs 42, so I'm getting the string from php.
};
}
我想您已经理解了这一点,但最后,我希望有一个数组(在ActionScript中),它将为我提供:
the_array['var1']=42;
the_array['var2']=6;
the_array['var3']="string";
我做错了什么?我该怎么办?
谢谢
编辑:
我正在尝试从php到ActionScript获取变量。
e、 g.我的PHP文件正确地将数组转换为html查询,但我不知道如何在ActionScript的数组中解析它们。对不起,我以为这是一个PHP问题。在ActionScript中,尝试以下操作:
var the_array:URLVariables = new URLVariables();
the_array.decode(loader.data);
trace(the_array.var1);
我想您正在寻找parse_str函数
parse_str($str, $output);
你应该用这个
var vars:URLVariables = new URLVariables(e.target.data);
这样你就可以简单地说:
trace(vars.var2); // 6
数组在这里是无用的,因为结果是关联的,而不是基于索引的,尽管您可以轻松地获取所有值,并通过一个简单的循环将它们放入数组中:
var array:Array = [];
for(var i:String in vars)
{
array.push(vars[i]);
}
谢谢,但我的问题在ActionScript方面。我正在尝试从PHP正确生成的字符串中解析变量。进行编辑后,请立即尝试。不过,您对URLVariables的理解是正确的。谢谢,但我的问题在ActionScript方面。我正在尝试从PHP正确生成的字符串中解析变量。我的回答对您有帮助吗?