PHP で配列キーに効率的にプレフィックスを付けるにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-10-26 15:33:30
オリジナル
150 人が閲覧しました

How to Efficiently Prefix Array Keys in PHP?

配列キーの効率的な接頭辞

配列内のすべてのキーの先頭に文字列を追加するには、複数の方法を使用できます。

一行の解決策

最も簡潔な解決策には、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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!