[英]PHP Parsing Array with Regex
I'm calling my remote API and getting this reply: 我正在调用远程API并收到以下答复:
Array
(
[TEST] => 1.1.1|Running
[MODEL] => 4.91|Running
[ENGING] => 2.4.37|Running
)
I want to Parse it and change it to: 我想解析它并将其更改为:
Array
(
[TEST] => [
'version' => "1.1.1",
'status' => 'Running'
]
[MODEL] => [
'version' => "4.91",
'status' => 'Running'
]
[ENGING] => [
'version' => "2.4",
'status' => 'Stop'
]
)
I tried a lot of ways, and searched a lot on Google but didn't find a solution. 我尝试了很多方法,并在Google上进行了很多搜索,但没有找到解决方案。
I want to split what's coming after the "|" 我想分割“ |”之后的内容 to get the word after it.
得到这个词。
Thanks! 谢谢!
You can use array_map
and array_combine
to get your desired result: 您可以使用
array_map
和array_combine
获得所需的结果:
$response = array
(
'TEST' => '1.1.1|Running',
'MODEL' => '4.91|Running',
'ENGING' => '2.4.37|Running'
);
$response = array_map(function ($v) {
return array_combine(array('version', 'status'), explode('|', $v));
},
$response);
print_r($response);
Output: 输出:
Array
(
[TEST] => Array
(
[version] => 1.1.1
[status] => Running
)
[MODEL] => Array
(
[version] => 4.91
[status] => Running
)
[ENGING] => Array
(
[version] => 2.4.37
[status] => Running
)
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.