Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Javascript数组转换为PHP_Php_Javascript - Fatal编程技术网

将Javascript数组转换为PHP

将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

我有一个带有curl的外部站点的PHP脚本,它返回一个javascript数组,如下所示:

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格式数组。