Position actuelle: Accueil> Derniers articles> Utiliser avec l'exploit: convertir les chaînes en tableaux de valeur clé

Utiliser avec l'exploit: convertir les chaînes en tableaux de valeur clé

M66 2025-06-06

En PHP, nous devons souvent traiter les chaînes en tableaux et les convertir en tableaux de paires de valeurs clés. La fonction Array_Fill_keys est une fonction très pratique qui peut nous aider à générer un tableau de paires de valeurs clés en fonction des éléments d'un tableau et de remplir la valeur spécifiée pour chaque clé. Cet article utilisera un exemple pour expliquer comment diviser une chaîne en un tableau et utiliser Array_Fill_Keys pour convertir le tableau partagé en un tableau de paire de valeurs clés.

Analyse des étapes

1. Utilisez la fonction d'exploitation pour diviser la chaîne

Tout d'abord, nous devons diviser une chaîne en un tableau. PHP fournit la fonction exploit () , qui peut diviser les chaînes en tableaux basés sur des délimiteurs spécifiés.

Par exemple, supposons que nous ayons une chaîne contenant des mots séparés par des virgules:

 $string = "apple,banana,orange,grape";

Utilisez la fonction exploit () pour le diviser en un tableau:

 $array = explode(",", $string);
print_r($array);

Le résultat de la sortie est:

 Array
(
    [0] => apple
    [1] => banana
    [2] => orange
    [3] => grape
)

2. Utilisez Array_Fill_keys pour se convertir en tableaux de paires de valeurs clés

Ensuite, nous utiliserons la fonction array_fill_keys pour convertir le tableau fendu en un tableau de paires de valeurs clés. array_fill_keys nécessite deux paramètres: le premier est le tableau de nom de clé, et le second est la valeur remplie.

Nous pouvons utiliser le tableau divisé comme tableau de nom de clé et spécifier la même valeur pour chaque touche, par exemple, définir la valeur de toutes les clés à TRUE .

 $keys = explode(",", $string);
$values = true; // Toutes les paires de valeurs clés sont définies sur true

$assocArray = array_fill_keys($keys, $values);
print_r($assocArray);

Le résultat de la sortie est:

 Array
(
    [apple] => 1
    [banana] => 1
    [orange] => 1
    [grape] => 1
)

3. Combinez les instances et les URL

Si nous sommes également impliqués dans les URL lors du traitement des chaînes, nous pouvons utiliser ces méthodes pour diviser la chaîne d'URL, puis nous pouvons utiliser Array_Fill_keys pour remplir les paires de valeurs clés.

Supposons que nous ayons l'URL suivante:

 $url = "https://m66.net/product?id=123&category=books&price=99";

Nous pouvons diviser les pièces des paramètres dans l'URL et les convertir en tableaux de paires de valeurs clés:

 // DiviserURLpartie de la chaîne de requête
$queryString = parse_url($url, PHP_URL_QUERY);
parse_str($queryString, $params);

// utiliser array_fill_keys Créer un tableau de paires de valeurs clés
$keys = array_keys($params);
$values = 'some_value'; // Définissez la valeur de toutes les clés pour 'some_value'

$assocArray = array_fill_keys($keys, $values);
print_r($assocArray);

Le résultat de la sortie est:

 Array
(
    [id] => some_value
    [category] => some_value
    [price] => some_value
)

Dans cet exemple, nous les convertissons en un tableau de paire de valeurs clés en analysant l'URL et en extraitant les noms de clés des paramètres de requête.