首页  >  文章  >  后端开发  >  如何在 PHP 中有效地将字符串添加到数组键前面?

如何在 PHP 中有效地将字符串添加到数组键前面?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-10-26 20:47:02674浏览

How to Efficiently Prepend a String to Array Keys in PHP?

数组的高效键前缀

要将字符串添加到平面数组中的所有键前面,请考虑以下方法:

单行解决方案:

<code class="php">$prefix = "prefix";
$array = array_combine(
    array_map(fn($k) => $prefix . $k, array_keys($array)),
    $array
);</code>

迭代方法:

<code class="php">$prefix = "prefix";
foreach ($array as $k => $v) {
    $array[$prefix . $k] = $v;
    unset($array[$k]);
}</code>

历史方法(PHP 5.3 之前) ):

<code class="php">class KeyPrefixer {
    private $prefix;
    public function __construct($prefix) {
        $this->prefix = (string)$prefix;       
    }
    public static function prefix(array $array, $prefix) {
        $prefixer = new KeyPrefixer($prefix);
        return $prefixer->mapArray($array);
    }
    public function mapArray(array $array) {
        return array_combine(
            array_map(array($this, 'mapKey', array_keys($array)),
            $array
        );
    }
    public function mapKey($key) {
        return $this->prefix . (string)$key;
    }
}</code>

以上是如何在 PHP 中有效地将字符串添加到数组键前面?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn