In der täglichen Entwicklung sind Konfigurationsarrays überall, insbesondere mehrdimensionale Konfigurationsarrays. Wenn wir das "letzte Konfigurationselement" in einem Array schnell erhalten müssen, wird die Funktion end () zu einer sehr effizienten und einfachen Wahl.
In diesem Artikel wird ein praktischer Fall verwendet, um Sie durch die Verwendung der Funktion End () zu verarbeiten, um komplexe mehrdimensionale Arrays zu verarbeiten und die Details und Vorsichtsmaßnahmen zu erklären.
Angenommen, Sie entwickeln ein Content -Management -System, das mehrere Websites unterstützt. Jede Website verfügt über eine eigene Konfigurationsmenge, beispielsweise:
$config = [
'site1' => [
'url' => 'https://m66.net/site1',
'theme' => 'light',
'features' => ['blog', 'shop'],
],
'site2' => [
'url' => 'https://m66.net/site2',
'theme' => 'dark',
'features' => ['blog', 'forum', 'gallery'],
],
'site3' => [
'url' => 'https://m66.net/site3',
'theme' => 'custom',
'features' => ['landing', 'portfolio'],
]
];
Jetzt möchten Sie die Konfigurationselemente der "letzten Website" in einigen Verwaltungsszenarien schnell abrufen. Was solltest du tun?
Die Funktion von PHPs End () kann den internen Zeiger des Arrays auf das letzte Element verschieben und den Wert zurückgeben. Die Verwendung ist sehr einfach:
$lastSiteConfig = end($config);
Zu diesem Zeitpunkt ist $ lastSiteConfig der Satz von Konfigurationen, die Site3 entsprechen.
Sie können sogar die URL der letzten Website direkt erhalten:
$lastUrl = $lastSiteConfig['url']; // https://m66.net/site3
Dies ist viel einfacher als manuelle Zähl- und Indexierungsvorgänge, und der Code ist leichter zu lesen.
Lassen Sie uns diese Logik in eine Funktion integrieren, damit sie mehrmals aufgerufen werden kann:
function getLastSiteUrl(array $siteConfigs): string
{
$lastConfig = end($siteConfigs);
return $lastConfig['url'] ?? '';
}
echo getLastSiteUrl($config); // Ausgabe:https://m66.net/site3
Sie können diese Funktion und Rückgabethema oder Funktionen nach unterschiedlichen Anforderungen auch erweitern:
function getLastSiteFeature(array $siteConfigs): array
{
$lastConfig = end($siteConfigs);
return $lastConfig['features'] ?? [];
}
End () ändert den internen Zeiger des Arrays und eignet sich nicht für direkte Anrufe während mehrerer Traverals. Wenn Sie das letzte Element häufig lesen müssen, wird empfohlen, das Ergebnis zuerst zu speichern.
End () arbeitet mit dem ursprünglichen Array, das eingegeben wurde. Wenn Sie andere Betriebsanforderungen für dieses Array haben, wird empfohlen, es zuerst zu kopieren .
Die Verwendung von End () für leere Arrays gibt FALSE zurück, sodass es empfohlen wird, zuerst ein Urteil zu fällen.
Es ist üblich, Arrays in PHP zu verarbeiten, und die Funktion End () ist klein, ist jedoch extrem leistungsfähig, wenn es sich um mehrdimensionale Arrays handelt. Unabhängig davon, ob es sich um die letzte Konfiguration handelt oder einen bestimmten Datenart extrahiert, kann sie mit nur einer Codezeile abgeschlossen werden, was die Einfachheit und Wartbarkeit des Codes erheblich verbessert.
Wenn Sie das nächste Mal mit komplexen Konfigurationsarrays konfigurieren, vergessen Sie nicht, End () - einfach, effizient und praktisch!