Maison  >  Article  >  développement back-end  >  Comment ajouter efficacement une chaîne aux clés d’un tableau en PHP ?

Comment ajouter efficacement une chaîne aux clés d’un tableau en PHP ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-26 20:47:02674parcourir

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

Préfixe de clé efficace pour un tableau

Pour ajouter une chaîne à toutes les clés d'un tableau plat, envisagez les approches suivantes :

Solution monoligne :

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

Approche itérative :

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

Approche historique (pré-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>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn