有效率地為陣列鍵加上前綴
操作陣列時,通常需要為所有鍵加上前綴。此操作可以透過多種方式執行,但並非所有方法都同樣有效。
最快的解決方案
最快的解決方案是將array_combine() 與array_map 結合使用():
<code class="php">$prefix = "prefix"; $array = array_combine( array_map(fn($k) => $prefix . $k, array_keys($array)), $array );</code>
此>此方法迭代原始數組鍵,附加前綴,並使用array_combine() 建立一個新數組,以相應地重新分配鍵和值。
其他解
其他解法包括:
<code class="php">foreach ($array as $k => $v) { $array[$prefix . $k] = $v; unset($array[$k]); }</code>
<code class="php">$prefix = "prefix"; $array = KeyPrefixer::prefix($array, $prefix);</code>
歷史視角
在PHP 5.3 之前,需要不同的方法:
<code class="php">$prefixer = new KeyPrefixer($prefix); return $prefixer->mapArray($array);</code>
此方法利用自訂類別和具有匿名函數的array_map() 來操作鍵和價值。
以上是如何在 PHP 中有效地為數組鍵加上前綴?的詳細內容。更多資訊請關注PHP中文網其他相關文章!