string(12) "1111" ["resourceCode"] => string(13) "222"">
当前位置:Gxlcms > PHP教程 > php数组字符,转换数组

php数组字符,转换数组

时间:2021-07-01 10:21:17 帮助过:2人阅读

下面是数组输出后的字符串。我想把它转换成数组
array(9) {
["productCode"] => string(12) "1111"
["resourceCode"] => string(13) "222"
["userCode"] => string(9) "333"
["tvCode"] => string(8) "444"
["extraInfo"] => string(4) "null"
["orderResult"] => string(1) "1"
["subId"] => string(2) "-1"
["payment"] => string(1) "1"
["_URL_"] => array(2) {
[0] => string(3) "test"
[1] => string(14) "callback"
}
}

eval('$dd='.$result.';');
但是一直报错。汗。


回复讨论(解决方案)

你那个是数组了,还转什么。

我可能没说清楚。上面的字符串。是接口服务器返回过来的。现在要解析这个类似数组的字符串

unserialize(string)

你这个串是怎么得来的。是用var_dump输出的吧,最好贴出全部代码以供分析。

$s =<<< TXTarray(9) {  ["productCode"] => string(12) "1111"  ["resourceCode"] => string(13) "222"  ["userCode"] => string(9) "333"  ["tvCode"] => string(8) "444"  ["extraInfo"] => string(4) "null"  ["orderResult"] => string(1) "1"  ["subId"] => string(2) "-1"  ["payment"] => string(1) "1"  ["_URL_"] => array(2) {    [0] => string(3) "test"    [1] => string(14) "callback"  }}TXT;$s = preg_replace_callback('/(\[|\]|string|\(\d+\))|({|}|"\s+)/', 'foo', $s);$ar = eval('return ' . trim($s, ',') . ';');print_r($ar);function foo($r) {  if($r[1]) return '';  if($r[2] == '{') return '(';  if($r[2] == '}') return '),';  return '",'.PHP_EOL; }
Array(    [productCode] => 1111    [resourceCode] => 222    [userCode] => 333    [tvCode] => 444    [extraInfo] => null    [orderResult] => 1    [subId] => -1    [payment] => 1    [_URL_] => Array        (            [0] => test            [1] => callback        ))

不要意思。我知道问题了。我犯了个低级错误。不好意思。打扰各位了

人气教程排行