配列キーの効率的な接頭辞
配列内のすべてのキーの先頭に文字列を追加するには、複数の方法を使用できます。
一行の解決策
最も簡潔な解決策には、array_map と array_combine の組み合わせが含まれます。
<code class="php">$prefix = "prefix"; $array = array_combine( array_map( fn($k) => $prefix . $k, array_keys($array) ), $array );</code>
関数的アプローチ
PHP 7.4 以降のバージョンでは、アロー関数構文を使用できます。
<code class="php">$prefix = "prefix"; $array = array_combine( array_map( fn($k) => $prefix . $k, array_keys($array) ), $array );</code>
反復アプローチ
従来のループベースのソリューション
<code class="php">foreach ($array as $k => $v) { $array[$prefix . $k] = $v; unset($array[$k]); }</code>
PHP 5.3 以前のカスタム クラス
古い PHP バージョンでは、mapArray メソッドを備えたカスタム クラスを使用できます:
<code class="php">class KeyPrefixer { public function prefix(array $array, $prefix) { return $this->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; } } $prefix = "prefix"; $array = KeyPrefixer::prefix($array, $prefix);</code>
以上がPHP で配列キーに効率的にプレフィックスを付けるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。