Aktueller Standort: Startseite> Neueste Artikel> Erstellen Sie benutzerdefinierte Funktionskapselung Array_Count_Values ​​(), um die Wiederverwendbarkeit zu verbessern

Erstellen Sie benutzerdefinierte Funktionskapselung Array_Count_Values ​​(), um die Wiederverwendbarkeit zu verbessern

M66 2025-06-07

Während der Entwicklung sind Array -Operationen eine der üblichen Aufgaben. PHP bietet viele integrierte Funktionen, um Arrays zu manipulieren, darunter Array_Count_Values ​​() eine sehr praktische Funktion. Seine Funktion besteht darin, die Anzahl der Vorkommen aller Werte im Array zu zählen und das Ergebnis als assoziatives Array zurückzugeben. Manchmal möchten wir diesen Vorgang jedoch in eine benutzerdefinierte Funktion zusammenfassen, um sie im Projekt wiederzuverwenden und den Entwicklungsprozess zu vereinfachen.

In diesem Artikel wird angezeigt, wie Sie Array_Count_Values ​​() zusammenfassen, indem eine benutzerdefinierte Funktion zur Verbesserung der Wiederverwendbarkeit von Code sowie die Einfachheit und Wartbarkeit von Code erstellt wird.

1. Grundlegende Einführung in Array_Count_Values ​​()

Array_Count_values ​​() ist eine integrierte Funktion in PHP, die die Anzahl der Vorkommen aller Werte in einem Array zählen kann. Es gibt ein assoziatives Array zurück, in dem der Schlüssel der Wert ist, der im Array angezeigt wird, und der Wert die Anzahl der Vorkommen dieses Wertes.

Beispielcode:

 $array = ["apple", "banana", "apple", "orange", "banana", "apple"];
$count = array_count_values($array);
print_r($count);

Ausgangsergebnis:

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

Aus dem obigen Beispiel können wir sehen, dass Array_Count_Values ​​() die Häufigkeit von Array -Elementen leicht zählen kann.

2. Erstellen Sie eine benutzerdefinierte Funktionskapselung Array_Count_Values ​​()

Obwohl Array_Count_values ​​() eine sehr bequeme integrierte Funktion ist, können wir sie weiter inkapitulieren, um eine vielseitigere und erweiterbare benutzerdefinierte Funktion zu erstellen. Auf diese Weise können wir es bei Bedarf wiederverwenden und die Funktionslogik zentral verwalten.

Benutzerdefinierte Funktionsdesign:

Wir erstellen eine benutzerdefinierte Funktion, die ein Array als Argument nimmt, array_count_values ​​() aufrufen, um die Vorkommen jedes Wertes im Array zu zählen und das Ergebnis zurückzugeben.

 /**
 * Statistik Die Anzahl der Vorkommen jedes Wertes im Array
 *
 * @param array $inputArray Das Eingangsarray
 * @return array Gibt die assoziative Reihe von Statistikergebnissen zurück
 */
function countValues(array $inputArray): array {
    // verwenden array_count_values Zählen
    return array_count_values($inputArray);
}

Beispielcode:

 $array = ["apple", "banana", "apple", "orange", "banana", "apple"];
$result = countValues($array);
print_r($result);

Ausgangsergebnis:

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

Durch die Kapselung können wir diesen Code klarer verwalten und wiederverwenden. Und wenn wir diese Logik in Zukunft erweitern müssen (z. B. die Kontrolle der Fallempfindlichkeit oder das Erstellen bestimmter bestimmter Werte usw.), müssen wir nur die Funktion countValues ​​() ändern.

3. Verbesserung der Wiederverwendbarkeit des Codes und vereinfachen Sie den Entwicklungsprozess

3.1 Code -Wiederverwendung

Der größte Vorteil der Kapazität von Funktionen besteht darin, dass sie die Wiederverwendbarkeit des Codes verbessern. Unabhängig davon, wo Sie ähnliche Statistiken im Projekt durchführen müssen, rufen Sie einfach die Funktion countValues ​​() an, und Sie müssen nicht jedes Mal ein Stück Array_Count_Values ​​() aufrufen. Auf diese Weise wird der Code modularer und einfacher zu verwalten.

3.2 Die Entwicklung vereinfachen

Während der Entwicklung begegnen wir häufig ähnliche Aufgaben: Zählen Sie die Anzahl der Vorkommen bestimmter Werte in einem Array. Durch die Einkapselung von Array_Count_Values ​​() können wir während der Entwicklung direkt auf die Entwicklung von CountValues ​​() aufrufen, ohne jedes Mal auf die zugrunde liegenden Implementierungsdetails zu achten. Dies verbessert nicht nur die Entwicklungseffizienz, sondern macht den Code auch lesbarer.

3.3 leicht zu erweitern und zu warten

Wenn es neue Anforderungen oder Änderungen für die eingekapselte Funktion gibt, müssen wir nur einen Ort ändern (d. H. Die Funktion countValues ​​() selbst). Dies erleichtert den Code leichter zu warten und kann an Ihre Bedürfnisse flexibel eingestellt werden. Wenn wir beispielsweise bestimmte bestimmte Werte während der Statistik- oder Filterwerte ignorieren möchten, kann die eingekapselte Funktion leicht erweitert werden.

4. Code Beispielerweiterung: Filterfunktion hinzufügen

Um die Skalierbarkeit der Kapselung besser zu demonstrieren, möchten wir beim Zählen von Werten bestimmte spezifische Werte herausfiltern. Wir können die Funktion countValues ​​() ändern und einen optionalen Filterparameter hinzufügen.

Modifizierte CountValues ​​() -Funktion:

 /**
 * Statistik Die Anzahl der Vorkommen jedes Wertes im Array,Und filtern Sie den angegebenen Wert heraus
 *
 * @param array $inputArray Das Eingangsarray
 * @param array $excludeValues Werte, die ausgeschlossen werden müssen
 * @return array Gibt die assoziative Reihe von Statistikergebnissen zurück
 */
function countValues(array $inputArray, array $excludeValues = []): array {
    // Filtern Sie unnötige Werte heraus
    $filteredArray = array_diff($inputArray, $excludeValues);
    
    // verwenden array_count_values Zählen
    return array_count_values($filteredArray);
}

Beispielcode:

 $array = ["apple", "banana", "apple", "orange", "banana", "apple"];
$exclude = ["banana"]; // Filtern 'banana'
$result = countValues($array, $exclude);
print_r($result);

Ausgangsergebnis:

 Array
(
    [apple] => 3
    [orange] => 1
)

Durch Erweiterungen können wir beim Aufrufen bestimmte Werte selektiv ausschließen, wodurch die Funktion flexibler und praktischer wird.

5. Schlussfolgerung

Durch das Erstellen einer benutzerdefinierten Funktionskapselung Array_Count_Values ​​() können wir effizientere, prägnantere und wartbare Code erzielen. Die Kapselung verbessert nicht nur die Wiederverwendbarkeit des Codes, sondern vereinfacht auch den Entwicklungsprozess und macht den Code -Logik klarer. Unabhängig davon, ob es sich in den grundlegenden statistischen Funktionen befindet oder wenn weitere Funktionen erweitert werden müssen, können die eingekapselten Funktionen flexibel reagiert und die Entwicklungseffizienz verbessert werden.

Ich hoffe, dieser Artikel kann Ihnen helfen, zu verstehen, wie Sie den Entwicklungsprozess vereinfachen können, indem integrierte Funktionen eingekapselt und die Wartbarkeit und Wiederverwendbarkeit Ihres Codes effektiv verbessert werden.