Dans la programmation PHP, vous rencontrez souvent des situations où vous devez initialiser un tableau. Surtout lorsque vous traitez avec certains tableaux sérialisés, l'initialisation manuelle d'un tableau peut être très lourde et sujet aux erreurs. Heureusement, PHP fournit des fonctions intégrées qui peuvent nous aider à initialiser ces tableaux plus efficacement. Parmi eux, Range et Array_Fill_Keys sont deux fonctions très utiles qui peuvent nous aider à créer rapidement des tableaux sérialisés et à améliorer l'efficacité de développement.
Un tableau sérialisé fait référence à un tableau dont les éléments ont des clés continues et commencent généralement, incrément ou diminuent d'une certaine valeur initiale. Par exemple, le tableau [1, 2, 3, 4, 5] est un réseau sérialisé typique. Nous devons généralement générer automatiquement ces tableaux d'une certaine manière sans avoir à écrire manuellement chaque élément.
En PHP, la fonction de plage peut être utilisée pour créer un tableau de plages spécifiées. Il accepte trois paramètres:
Démarrer : la valeur de début de la séquence
Fin : la valeur finale de la séquence
ÉTAPE : Valeur étape (facultatif, par défaut est 1)
Par exemple, l'utilisation de la plage peut rapidement créer un tableau de 1 à 10:
$rangeArray = range(1, 10);
print_r($rangeArray);
Le résultat de la sortie est:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
[6] => 7
[7] => 8
[8] => 9
[9] => 10
)
Comme vous pouvez le voir, la fonction de plage crée avec succès un tableau de 1 à 10, où la valeur de chaque élément est incrémentée de 1.
La fonction Array_Fill_keys est utilisée pour créer un nouveau tableau basé sur la touche donnée et attribuer la même valeur à chaque touche. Il accepte deux paramètres:
Clés : la clé d'un tableau, qui peut être un tableau ou une chaîne.
Valeur : la valeur à attribuer à chaque clé.
Par exemple, si nous voulons créer un tableau contenant plusieurs clés et que chaque clé a une valeur de vrai , nous pouvons utiliser array_fill_keys :
$keys = ['a', 'b', 'c', 'd'];
$value = true;
$filledArray = array_fill_keys($keys, $value);
print_r($filledArray);
Le résultat de la sortie est:
Array
(
[a] => 1
[b] => 1
[c] => 1
[d] => 1
)
La fonction Array_Fill_keys initialise chaque clé spécifiée à la même valeur, améliorant l'efficacité de l'initialisation du tableau.
Nous pouvons combiner la plage et les fonctions Array_Fill_keys pour initialiser rapidement un tableau sérialisé et remplir la valeur spécifiée. En supposant que nous voulons créer un tableau de 1 à 10 et chaque élément a une valeur de vrai , nous pouvons utiliser le code suivant:
$keys = range(1, 10);
$filledArray = array_fill_keys($keys, true);
print_r($filledArray);
Le résultat de la sortie est:
Array
(
[1] => 1
[2] => 1
[3] => 1
[4] => 1
[5] => 1
[6] => 1
[7] => 1
[8] => 1
[9] => 1
[10] => 1
)
Comme vous pouvez le voir, la fonction de plage génère d'abord des nombres de 1 à 10, puis Array_Fill_Keys prend ces nombres en tant que touches et initialise la valeur de chaque clé pour true .
Supposons que nous devons traiter un lot d'adresses d'URL et que nous voulons modifier uniformément leurs noms de domaine. Nous pouvons utiliser la plage et array_fill_keys pour générer un tableau sérialisé et remplacer le nom de domaine dans l'URL au besoin. Voici un exemple, en supposant que nous devons remplacer le nom de domaine dans plusieurs URL de l'exemple.com à m66.net .
$urls = [
'https://example.com/page1',
'https://example.com/page2',
'https://example.com/page3',
];
$updatedUrls = array_map(function($url) {
return preg_replace('/https:\/\/example\.com/', 'https://m66.net', $url);
}, $urls);
print_r($updatedUrls);
Le résultat de la sortie est:
Array
(
[0] => https://m66.net/page1
[1] => https://m66.net/page2
[2] => https://m66.net/page3
)
Dans cet exemple, nous utilisons la fonction Array_Map pour traiter toutes les adresses URL et remplacer le nom de domaine par m66.net .
Avec la plage et les fonctions Array_Fill_keys , vous pouvez rapidement initialiser les tableaux sérialisés, réduire les tracas de l'écriture manuelle des éléments du tableau et de l'amélioration de l'efficacité de programmation. Combinée à Preg_replace ou à d'autres méthodes, les tâches de remplacement de nom de domaine dans les URL peuvent être gérées efficacement, améliorant davantage la simplicité et la maintenabilité du code.