首页 > 后端开发 > php教程 > 如何将 PHP 点表示法字符串转换为多维数组?

如何将 PHP 点表示法字符串转换为多维数组?

Linda Hamilton
发布: 2024-11-30 07:32:14
原创
114 人浏览过

How Can I Convert PHP Dot Notation Strings into Multidimensional Arrays?

在 PHP 中将点表示法转换为多维数组

在 PHP 中,可以使用点表示法模拟多维数组结构,如“this .那个.其他”。但是,这可能会导致管理和编辑变得很麻烦。为了解决这个问题,我们寻求一种方法将点表示法转换为多维数组。

建议的解决方案采用以下函数:

function assignArrayByPath(&$arr, $path, $value, $separator='.') {
    $keys = explode($separator, $path);

    foreach ($keys as $key) {
        $arr = &$arr[$key];
    }

    $arr = $value;
}
登录后复制

此函数迭代由点分隔的键,一路上创建任何缺失的键,并最终分配所需的值。

例如,以下点表示法:

s1.t1.column.1 = size:33%
登录后复制

可以转换为多维数组,如下所示:

assignArrayByPath($source, 's1.t1.column.1', 'size:33%');

echo $source['s1']['t1']['column']['1']; // Output: size:33%
登录后复制

以上是如何将 PHP 点表示法字符串转换为多维数组?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板