Comment ajouter efficacement un préfixe aux clés d'un tableau en PHP ?

Mary-Kate Olsen
Libérer: 2024-10-27 06:40:03
original
174 Les gens l'ont consulté

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

Préfixer efficacement un préfixe aux clés du tableau

Lors de la manipulation de tableaux, il est souvent nécessaire d'ajouter un préfixe à toutes les clés. Cette opération peut être effectuée de plusieurs manières, mais toutes les approches ne sont pas aussi efficaces.

Solution la plus rapide

La solution la plus rapide consiste à utiliser array_combine() en conjonction avec array_map ():

<code class="php">$prefix = "prefix";
$array = array_combine(
    array_map(fn($k) => $prefix . $k, array_keys($array)),
    $array
);</code>
Copier après la connexion

Cette méthode parcourt les clés du tableau d'origine, ajoute le préfixe et crée un nouveau tableau à l'aide de array_combine() pour réaffecter les clés et les valeurs en conséquence.

Autres solutions

D'autres solutions incluent :

  • Utilisation d'une boucle foreach pour parcourir chaque clé et ajouter manuellement le préfixe, puis supprimer la clé d'origine :
<code class="php">foreach ($array as $k => $v)
{
    $array[$prefix . $k] = $v;
    unset($array[$k]);
}</code>
Copier après la connexion
  • Utilisation d'une classe KeyPrefixer personnalisée avec une méthode __construct() et une méthode mapArray() pour effectuer efficacement l'opération de préfixe :
<code class="php">$prefix = "prefix";
$array = KeyPrefixer::prefix($array, $prefix);</code>
Copier après la connexion

Perspective historique

Avant PHP 5.3, une approche différente était nécessaire :

<code class="php">$prefixer = new KeyPrefixer($prefix);
return $prefixer->mapArray($array);</code>
Copier après la connexion

Cette méthode utilisait une classe personnalisée et array_map() avec une fonction anonyme pour manipuler les clés et valeurs.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!