将Javascript数组转换为PHP
我有一个带有curl的外部站点的PHP脚本,它返回一个javascript数组,如下所示:将Javascript数组转换为PHP,php,javascript,Php,Javascript,我有一个带有curl的外部站点的PHP脚本,它返回一个javascript数组,如下所示: for($i = 0; $i < len($matches);$i +=2) $finalArray[$matches[i]] = $matches[i+1]; 数组[0]=“一些东西” 数组[1]=“还有一些东西” 我想把它转换成一个PHP数组,以便稍后在脚本中引用它进行回音。这是做这件事的方法吗?有更好的办法吗 谢谢 如果您的javascript页面在http请求中返回JSON Ja
for($i = 0; $i < len($matches);$i +=2)
$finalArray[$matches[i]] = $matches[i+1];
数组[0]=“一些东西”
数组[1]=“还有一些东西”
我想把它转换成一个PHP数组,以便稍后在脚本中引用它进行回音。这是做这件事的方法吗?有更好的办法吗
谢谢 如果您的javascript页面在http请求中返回JSON Javascripit对象表示法,您可以使用JSON_decode php函数在php数组中转换它 如果是字符串数组,可以使用正则表达式: 为此:
preg_match( "\[(\d+)\]='(.*)'" , $curlString , $matches )
您可以获得索引和值:
i、 e,旋度响应:
array[0] = 'abc';
array[1] = 'xyz';
在preg_match之前,$matches的值为:
$matches[0] == '0';
$matches[1] == 'abc';
$matches[1] == '1';
$matches[2] == 'xyz';
用这样的东西:
for($i = 0; $i < len($matches);$i +=2)
$finalArray[$matches[i]] = $matches[i+1];
$finalArray具有相同的数组值
此代码可能包含错误。您不能只向数组中添加一个$,然后添加一个;在每行的末尾?这将使它成为一个PHP可以接受的数组,但在那个阶段,它仍然位于curl将其转储到的变量中。如何将其转换为可以访问的PHP数组?不幸的是,它只返回我上面发布的内容。纯文本中的javascript格式数组。