Position actuelle: Accueil> Derniers articles> Comment construire un tableau de configuration de colonne de table avec des valeurs par défaut à l'aide de la fonction Array_Fill_keys de PHP?

Comment construire un tableau de configuration de colonne de table avec des valeurs par défaut à l'aide de la fonction Array_Fill_keys de PHP?

M66 2025-06-06

Lors du développement d'un système de gestion d'arrière-plan, d'une plate-forme de gestion de contenu ou d'une page d'affichage de données, nous devons souvent définir la configuration de la colonne du tableau. Par exemple, nous devrons peut-être définir des attributs tels que le titre, l'alignement et s'il faut afficher pour chaque colonne. Dans ces scénarios, la fonction array_fill_keys () peut nous aider à construire rapidement un tableau de configuration avec des "valeurs par défaut", simplifiant considérablement le processus d'initialisation de la configuration.

1. Qu'est-ce que Array_Fill_keys?

Array_fill_keys de PHP est une fonction intégrée qui combine un tableau de noms de clés avec une valeur par défaut unifiée pour générer un tableau associatif.

grammaire:

 array_fill_keys(array $keys, mixed $value): array
  • $ touches : un tableau de noms de clés à utiliser.

  • $ Value : la valeur par défaut spécifiée pour chaque touche.

2. Scénario réel: Construire un tableau de configuration de la colonne de table

Supposons que nous ayons un tableau de données qui doit afficher les champs suivants:

 $columns = ['id', 'username', 'email', 'status', 'created_at'];

Nous voulons fournir une configuration initiale unifiée pour ces champs, tels que:

 [
    'title' => '',
    'align' => 'left',
    'visible' => true
]

Implémentation à l'aide de l'array_fill_keys:

 <?php

$columns = ['id', 'username', 'email', 'status', 'created_at'];

$defaultConfig = [
    'title' => '',
    'align' => 'left',
    'visible' => true
];

// utiliserarray_fill_keysConstruisez un tableau de configuration avec des valeurs par défaut
$configs = array_fill_keys($columns, $defaultConfig);

// Exemple:Remplacer la configuration par défaut pour des champs spécifiques
$configs['id']['title'] = 'numéro de série';
$configs['username']['title'] = 'nom d&#39;utilisateur';
$configs['email']['title'] = 'Mail';
$configs['status']['title'] = 'État';
$configs['created_at']['title'] = 'Temps de création';

// Exemple输出
echo '<pre>';
print_r($configs);
echo '</pre>';

Résultat de sortie:

 Array
(
    [id] => Array
        (
            [title] => numéro de série
            [align] => left
            [visible] => 1
        )

    [username] => Array
        (
            [title] => nom d&#39;utilisateur
            [align] => left
            [visible] => 1
        )

    ...
)

3. Combiné avec des conditions réelles: configuration de lecture de la page frontale

Supposons que vous souhaitiez passer ces configurations de colonne à l'extrémité frontale via l'interface, comme une adresse:

 https://m66.net/api/table/config

Vous pouvez convertir $ configs en json et le sortir en avant:

 header('Content-Type: application/json');
echo json_encode($configs);

Le frontal peut rendre dynamiquement des tables en fonction de ces configurations.

4. Conseils

  • Si vous avez plusieurs champs avec différentes structures de configuration, vous pouvez également combiner array_map () ou remplacer manuellement la valeur par défaut;

  • Il peut être encore encapsulé en une fonction pour un multiplexage facile;

  • Remarque: array_fill_keys () est une copie superficielle. Si vous modifiez la valeur d'une certaine touche, le $ defaultConfig d'origine ne changera pas, mais soyez prudent lorsque plusieurs touches partagent la même référence Array (peut être évité par array_map () + array_merge () ).