Aktueller Standort: Startseite> Neueste Artikel> Verwendung mit Exploit: Umwandle Strings in Schlüsselwert-Arrays

Verwendung mit Exploit: Umwandle Strings in Schlüsselwert-Arrays

M66 2025-06-06

In PHP müssen wir häufig Strings in Arrays verarbeiten und in Arrays von Schlüsselwertpaaren umwandeln. Die Funktion array_fill_keys ist eine sehr praktische Funktion, die uns helfen kann, ein Array von Schlüsselwertpaaren basierend auf Elementen eines Arrays zu generieren und den angegebenen Wert für jeden Schlüssel auszufüllen. In diesem Artikel wird ein Beispiel verwendet, um zu erklären, wie Sie eine Zeichenfolge in ein Array aufteilen und Array_Fill_Keys verwenden, um das Split-Array in ein Schlüssel-Wert-Paar-Array umzuwandeln.

Schrittanalyse

1. Verwenden Sie die Exploit -Funktion, um die Zeichenfolge aufzuteilen

Zuerst müssen wir eine Zeichenfolge in ein Array teilen. PHP liefert die Funktion von Exploit () , die Zeichenfolgen in Arrays basierend auf angegebenen Abgrenzern aufteilen kann.

Nehmen wir beispielsweise an, wir haben eine Zeichenfolge, die einige von Kommas getrennte Wörter enthält:

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

Verwenden Sie die Funktion exploit () , um sie in ein Array aufzuteilen:

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

Das Ausgangsergebnis ist:

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

2. Verwenden Sie Array_Fill_Keys , um in Schlüsselwert-Paar-Arrays zu konvertieren

Als nächstes werden wir die Funktion array_fill_keys verwenden, um das Split-Array in ein Array von Schlüsselwertpaaren umzuwandeln. Array_Fill_Keys erfordert zwei Parameter: Das erste ist das Schlüsselname -Array, und der zweite ist der ausgefüllte Wert.

Wir können das Split -Array als Schlüsselname -Array verwenden und den gleichen Wert für jeden Schlüssel angeben, z. B. den Wert aller Tasten auf True festlegen.

 $keys = explode(",", $string);
$values = true; // Alle Schlüsselwertpaare sind auf eingestellt true

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

Das Ausgangsergebnis ist:

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

3. Kombinieren Sie Instanzen und URLs

Wenn wir während der Verarbeitung von Zeichenfolgen auch an URLs beteiligt sind, können wir diese Methoden verwenden, um die URL-Zeichenfolge aufzuteilen, und dann können wir Array_Fill_Keys verwenden, um die Schlüsselwertpaare zu füllen.

Angenommen, wir haben die folgende URL:

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

Wir können die Parameterteile in der URL teilen und in Schlüsselwert-Paar-Arrays umwandeln:

 // TeiltURLAbfragestraße
$queryString = parse_url($url, PHP_URL_QUERY);
parse_str($queryString, $params);

// verwenden array_fill_keys Erstellen Sie eine Reihe von Schlüsselwertpaaren
$keys = array_keys($params);
$values = 'some_value'; // Stellen Sie den Wert aller Schlüssel auf 'some_value'

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

Das Ausgangsergebnis ist:

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

In diesem Beispiel konvertieren wir sie in ein Schlüsselwert-Paar-Array, indem wir die URL analysieren und die Schlüsselnamen der Abfrageparameter extrahieren.