Lors du développement de demandes d'interface PHP, nous devons souvent traiter les paramètres entrants et définir des valeurs par défaut pour certains paramètres. S'il existe de nombreux paramètres, l'initialisation manuelle du tableau peut apparaître redondant et sujette aux erreurs. À l'heure actuelle, Array_Fill_keys () devient un outil très efficace.
Cet article présentera comment utiliser array_fill_keys () pour initialiser rapidement le tableau par défaut de paramètres de demande d'API pour améliorer la maintenabilité et la clarté du code.
array_fill_keys () est une fonction intégrée en php qui associe les touches d'un tableau avec une valeur unifiée pour générer un nouveau tableau.
grammaire:
array_fill_keys(array $keys, mixed $value): array
$ touches : un tableau utilisé comme nom de clé du nouveau tableau.
$ Value : la valeur par défaut pour toutes les clés.
Imaginez que vous développez une interface pour interroger les données de l'article, et le client peut passer dans les paramètres suivants:
Page : numéro de page actuel
Limite : numéro par page
Trier : trier les champs
Ordre : Direction de tri (ASC ou DESC)
Afin d'éviter les erreurs du système causées par l'échec de l'utilisateur à transmettre ces paramètres, l'arrière-plan doit définir un tableau de paramètres par défaut. Nous pouvons utiliser array_fill_keys () pour simplifier ce processus.
<?php
// Définir les noms de clés des paramètres
$paramKeys = ['page', 'limit', 'sort', 'order'];
// utiliser array_fill_keys Initialiser la valeur par défaut
$defaultParams = array_fill_keys($paramKeys, null);
// Écraser manuellement les valeurs par défaut(Si nécessaire)
$defaultParams['page'] = 1;
$defaultParams['limit'] = 10;
$defaultParams['sort'] = 'created_at';
$defaultParams['order'] = 'desc';
// Simuler pour obtenir les paramètres entrants du client
$userInput = [
'page' => 2,
'order' => 'asc'
];
// Fusionner la saisie de l'utilisateur avec des valeurs par défaut(Priorité d'entrée de l'utilisateur)
$requestParams = array_merge($defaultParams, $userInput);
// Sortir le tableau des paramètres finaux
print_r($requestParams);
Array
(
[page] => 2
[limit] => 10
[sort] => created_at
[order] => asc
)
Comme vous pouvez le voir, array_fill_keys () nous permet d'initialiser une structure de paramètre par défaut propre en répertoriant simplement les noms de paramètres requis, réduisant considérablement la possibilité d'erreurs d'entrée manuelles.
Supposons que nous voulons envoyer ces paramètres à l'interface distante https://api.m66.net/articles/List via la demande de post, nous pouvons le faire:
<?php
$apiUrl = 'https://api.m66.net/articles/list';
$options = [
'http' => [
'method' => 'POST',
'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
'content' => http_build_query($requestParams),
'timeout' => 10
]
];
$context = stream_context_create($options);
$result = file_get_contents($apiUrl, false, $context);
echo $result;
L'utilisation de Array_Fill_keys () pour initialiser les valeurs par défaut des paramètres de la demande d'API est non seulement concise, mais améliore également la maintenabilité du code. Lorsque la liste des paramètres de votre interface change, vous n'avez qu'à mettre à jour le tableau des touches de paramètre sans modifier plusieurs instructions d'attribution manuelle.
Il s'agit d'un mode de pratique hautement recommandé, en particulier adapté à la gestion des paramètres et à l'unité structurelle dans les grands projets.