Lors du développement d'applications, en particulier des systèmes impliquant la gestion des autorisations des utilisateurs, certains champs d'autorisation sont généralement nécessaires pour initialiser par lots. PHP fournit une fonction très pratique array_fill_keys , qui peut nous aider à implémenter cette fonction rapidement. Cet article présentera comment utiliser la fonction array_fill_keys pour initialiser par lots le champ d'autorisation de l'utilisateur.
La fonction Array_Fill_keys est utilisée pour remplir un tableau avec des clés spécifiées. La syntaxe de la fonction est la suivante:
array array_fill_keys(array $keys, mixed $value);
$ touches : un tableau contenant toutes les clés.
$ Value : le contenu utilisé pour remplir la valeur du tableau.
Cette fonction crée un nouveau tableau, la clé du tableau est chaque élément dans le tableau de touches $ entrant, et la valeur correspondante est la valeur du paramètre de valeur $ .
Supposons que nous développons un système de gestion des utilisateurs qui nécessite une initialisation d'un ensemble de champs d'autorisation pour chaque utilisateur. Le nom de chaque champ d'autorisation est fixé et nous voulons définir une valeur par défaut pour chaque champ d'autorisation (par exemple, FAUX signifie que l'autorisation n'est pas activée).
Par exemple, nous avons les champs d'autorisation suivants:
can_edit
can_delete
can_create
can_view
Nous pouvons utiliser la fonction array_fill_keys pour intégrer les valeurs par défaut pour ces champs.
<?php
// Définir tous les champs d'autorisation
$permissions = [
'can_edit',
'can_delete',
'can_create',
'can_view'
];
// utiliser array_fill_keys Initialiser tous les champs d'autorisation pour false
$user_permissions = array_fill_keys($permissions, false);
// Imprimer le tableau d'autorisation initialisé
print_r($user_permissions);
?>
Array
(
[can_edit] =>
[can_delete] =>
[can_create] =>
[can_view] =>
)
Grâce au code ci-dessus, nous utilisons array_fill_keys pour créer un nouveau tableau $ user_permisessions , où chaque champ d'autorisation est initialisé en false , indiquant que l'utilisateur n'a pas ces autorisations.
Pendant l'opération système, si nous devons mettre à jour la valeur d'un certain champ d'autorisation, nous pouvons accéder directement à la touche correspondante dans le tableau et attribuer une nouvelle valeur. Par exemple, si nous voulons attribuer un champ d'autorisation Can_Edit d'un utilisateur à TRUE , nous pouvons le faire:
// renouveler can_edit La permission est true
$user_permissions['can_edit'] = true;
// 打印renouveler后的权限数组
print_r($user_permissions);
Si nous obtenons les informations d'autorisation de l'utilisateur de la base de données et que l'utilisateur n'a pas de autorisations, nous pouvons utiliser Array_Fill_Keys pour initialiser les autorisations manquantes. Par exemple, supposons que nous obtenions une partie du champ d'autorisation de la base de données, et nous pouvons utiliser array_fill_keys pour remplir la valeur par défaut du champ manquant.
// Autorisations utilisateur obtenues à partir de la base de données(Supposons que la base de données ne renvoie que les autorisations partielles)
$user_permissions_from_db = [
'can_edit' => true,
'can_view' => false
];
// Définir tous les champs d'autorisation
$all_permissions = ['can_edit', 'can_delete', 'can_create', 'can_view'];
// Obtenir des champs d'autorisation manquants,et remplissez la valeur par défaut
$missing_permissions = array_diff($all_permissions, array_keys($user_permissions_from_db));
$missing_permissions = array_fill_keys($missing_permissions, false);
// Fusionner les autorisations acquises avec des autorisations manquantes
$user_permissions = array_merge($user_permissions_from_db, $missing_permissions);
// Imprimer les autorisations de l'utilisateur final
print_r($user_permissions);
Array
(
[can_edit] => 1
[can_view] =>
[can_delete] =>
[can_create] =>
)
L'utilisation de la fonction Array_Fill_keys peut faciliter l'initialisation par lots des champs d'autorisation des utilisateurs, en particulier dans les systèmes de gestion des autorisations. En spécifiant une valeur par défaut dans chaque champ d'autorisation, nous pouvons garantir la cohérence des autorisations utilisateur à l'initialisation. Dans le même temps, si la source d'informations d'autorisation est incomplète, nous pouvons également remplir facilement les champs manquants pour assurer l'intégrité et la robustesse du système.
J'espère que cet article peut vous aider à mieux comprendre comment utiliser la fonction Array_Fill_keys de PHP pour initialiser le champ d'autorisation de l'utilisateur et l'appliquer dans des projets réels.