Position actuelle: Accueil> Derniers articles> Comment utiliser une combinaison de array_fill () et array_walk () pour implémenter l'initialisation de la valeur dynamique des tableaux?

Comment utiliser une combinaison de array_fill () et array_walk () pour implémenter l'initialisation de la valeur dynamique des tableaux?

M66 2025-06-05

En PHP, les tableaux sont des structures de données très importantes, souvent utilisées pour stocker et manipuler plusieurs valeurs. Afin d'initialiser de manière flexible les tableaux, PHP fournit de nombreuses fonctions intégrées, parmi lesquelles Array_Fill () et Array_Walk () sont deux fonctions couramment utilisées. En combinant ces deux fonctions, il est très pratique d'initialiser les valeurs dynamiques des tableaux.

1. Introduction à la fonction array_fill ()

La fonction Array_Fill () est utilisée pour remplir un tableau. Il accepte trois paramètres:

 array_fill(int $start_index, int $num, mixed $value): array
  • $ start_index : la position (index) à laquelle le tableau commence à remplir.

  • $ num : le nombre de remplissage, indiquant le nombre d'éléments à remplir.

  • $ Value : la valeur du rembourrage.

array_fill () crée un nouveau tableau et définit chaque élément de la valeur du tableau sur $ .

Exemple:

 $array = array_fill(0, 5, 'apple');
print_r($array);

Sortir:

 Array
(
    [0] => apple
    [1] => apple
    [2] => apple
    [3] => apple
    [4] => apple
)

2. Introduction à la fonction array_walk ()

La fonction array_walk () iratera sur chaque élément du tableau et traitera chaque élément via une fonction de rappel. Sa syntaxe de base est:

 array_walk(array &$array, callable $callback, mixed $userdata = null): bool
  • $ Array : Array en attente.

  • $ rappel : la fonction de rappel, traitement de chaque élément.

  • $ UserData : données supplémentaires qui peuvent être transmises à la fonction de rappel (facultative).

Exemple:

 $array = ['apple', 'banana', 'cherry'];
array_walk($array, function (&$item, $key) {
    $item = strtoupper($item); // Convertir les éléments du tableau en capitalisation
});
print_r($array);

Sortir:

 Array
(
    [0] => APPLE
    [1] => BANANA
    [2] => CHERRY
)

3. Combiner array_fill () et array_walk () pour l'initialisation dynamique

En utilisant array_fill () et array_walk () en combinaison, nous pouvons attribuer des valeurs dynamiques lors de l'initialisation du tableau puis de les traiter. Par exemple, nous pouvons initialiser un tableau contenant plusieurs données dynamiques, puis utiliser array_walk () pour modifier chaque élément.

Exemple: utilisez array_fill () et array_walk () pour initialiser et modifier les tableaux

Supposons que nous souhaitions initialiser un tableau avec 10 URL et modifier chaque URL via array_walk () (par exemple, remplacez le nom de domaine M66.net ):

 <?php
// utiliser array_fill Initialiser A contient 10 autonome URL Tableau de
$urls = array_fill(0, 10, 'http://example.com/page');

// utiliser array_walk 修改每autonome URL Nom de domaine
array_walk($urls, function (&$url) {
    // Remplacer le nom de domaine comme m66.net
    $url = preg_replace('/http:\/\/.*?\//', 'http://m66.net/', $url);
});

// 输出修改后Tableau de
print_r($urls);
?>

Sortir:

 Array
(
    [0] => http://m66.net/page
    [1] => http://m66.net/page
    [2] => http://m66.net/page
    [3] => http://m66.net/page
    [4] => http://m66.net/page
    [5] => http://m66.net/page
    [6] => http://m66.net/page
    [7] => http://m66.net/page
    [8] => http://m66.net/page
    [9] => http://m66.net/page
)

Dans cet exemple, la fonction Array_Fill () initialise un tableau contenant 10 URL identiques. Ensuite, nous utilisons la fonction array_walk () pour itérer le tableau et modifier le nom de domaine de chaque URL vers m66.net .

4. Résumé

En combinant array_fill () et array_walk () , vous pouvez initialiser et modifier de manière flexible les tableaux. array_fill () vous aide à créer un tableau avec la même valeur, tandis que Array_walk () offre la possibilité de traverser les tableaux et d'effectuer des opérations plus complexes. La combinaison de ces deux est idéale pour gérer l'initialisation dynamique du tableau, en particulier lorsque vous devez effectuer des calculs ou des modifications dynamiques sur chaque élément du tableau.