在 PHP 中将点语法转换为多维数组
将点分隔的命名空间字符串转换为多维数组可以是一个有价值的解析工具和重组数据。要实现此目的,请考虑以下方法:
最佳解决方案:
最佳解决方案涉及使用递归函数来遍历点分隔字符串并创建相应的数组结构。代码如下:
function assignArrayByPath(&$arr, $path, $value, $separator = '.') { $keys = explode($separator, $path); foreach ($keys as $key) { $arr = &$arr[$key]; } $arr = $value; }
工作原理:
示例:
使用代码:
$source = []; assignArrayByPath($source, 's1.t1.column.1', 'size:33%');
将会得到结果于:
$source['s1']['t1']['column']['1'] = 'size:33%';
以上是如何在 PHP 中将点分隔字符串转换为多维数组?的详细内容。更多信息请关注PHP中文网其他相关文章!