我想从这样的字符串中获取
color:blue,red;size:s
关联多数组
[
color => [blue,red],
size => [s]
]
我尝试使用 ([a-z]+):([a-z^,]+)
但这还不够;我不知道如何递归它或其他什么。
最佳答案
我不会使用正则表达式来做这样的事情。而是使用 explode()多次。
<?php
$str = 'color:blue,red;size:s';
$values = explode(';', $str);
$arr = [];
foreach($values as $val) {
$parts = explode(':', $val);
$arr[$parts[0]] = explode(',', $parts[1]);
}
输出:
Array
(
[color] => Array
(
[0] => blue
[1] => red
)
[size] => Array
(
[0] => s
)
)
关于php - 从模式中的字符串获取数组 - key1 :val1, val2,..;key2 :val1,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40155161/