如何高效地将定界字符串转换为无循环的关联数组?

Mary-Kate Olsen
发布: 2024-10-22 06:23:31
原创
829 人浏览过

How to Efficiently Convert a Delimited String into an Associative Array without Loops?

高效地将字符串分解为关联数组

将字符串转换为关联数组是编程中的常见任务。然而,在不使用循环的情况下这样做可能具有挑战性。让我们探讨一下将“1-350,9-390.99”这样的字符串分解为关联数组的问题的解决方案:

PHP 5.5 及更高版本提供了一种巧妙的方法来使用 array_chunk 和 array_column 的组合来实现此目的。它的工作原理如下:

<code class="php">$input  = '1-350,9-390.99';

$chunks = array_chunk(preg_split('/[-,]/', $input), 2);
$result = array_combine(array_column($chunks, 0), array_column($chunks, 1));

print_r($result);</code>
登录后复制

此代码首先使用 preg_split 函数将输入字符串拆分为块,并用破折号 (-) 和逗号 (,) 分隔字符串。然后,它使用 array_column 提取块的第一列和第二列,它们分别对应于关联数组的键和值。最后,使用 array_combine 创建关联数组。

结果是一个关联数组,其中键是块的第一个值(例如“1”和“9”),值是块的第一个值(例如“1”和“9”)。块的第二值(例如,“350”和“390.99”)。这种方法消除了对循环的需要,使其成为将分隔字符串转换为关联数组的高效且简洁的解决方案。

以上是如何高效地将定界字符串转换为无循环的关联数组?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!