Aktueller Standort: Startseite> Neueste Artikel> Wie erstelle ich eine Standardstruktur für Benutzereinstellungen mit Array_Fill_Keys?

Wie erstelle ich eine Standardstruktur für Benutzereinstellungen mit Array_Fill_Keys?

M66 2025-06-28

Bei der Entwicklung benutzerbezogener Funktionen müssen wir häufig eine Reihe von "Standardeinstellungen" für jeden Benutzer initialisieren. Diese Einstellungen können Benachrichtigungsoptionen, Interface -Themen, Sprachpräferenzen und mehr umfassen. PHP liefert eine sehr praktische Funktion array_fill_keys () , die einem bestimmten Schlüsselsatz schnell denselben Standardwert zuweisen kann. Dies ist sehr bequem, wenn Sie eine einheitliche Struktur bauen.

Was ist Array_Fill_keys ()?

Array_Fill_Keys (Array $ Keys, gemischter $ value): Array ist eine integrierte Funktion, die eine Array von Schlüsselnamen und einen Standardwert zu einem vollständigen assoziativen Array kombiniert.

Beispielsyntax:

 $keys = ['email_notifications', 'dark_mode', 'language'];
$defaults = array_fill_keys($keys, null);

Der obige Code generiert das folgende Array:

 [
    'email_notifications' => null,
    'dark_mode' => null,
    'language' => null,
]

Dies ist besonders nützlich, wenn eine Initialisierungsstruktur für "Benutzerpräferenzen" erstellt werden.

Beispiel: Initialisieren Sie die Standardeinstellungen der Benutzer

Nehmen wir an, wir erstellen ein Benutzereinstellungssystem für eine Website (z. B. https://m66.net ), und die Einstellungen des Benutzers enthalten, ob Benachrichtigungen, ausgewählte Themen, Spracheinstellungen usw. aktiviert werden sollen.

Wir können Array_Fill_keys () verwenden, um diese Schlüssel gleichzeitig zu erstellen und Standardwerte anzugeben:

 <?php
// Definieren Sie alle unterstützten Präferenzschlüssel
$preferenceKeys = [
    'email_notifications',
    'sms_alerts',
    'push_notifications',
    'theme',
    'language',
    'newsletter_subscribed'
];

// Initialisieren Sie den Standardeinstellungswert
$defaultPreferences = array_fill_keys($preferenceKeys, null);

// Geben Sie den spezifischen Standardwert an
$defaultPreferences['email_notifications'] = true;
$defaultPreferences['sms_alerts'] = false;
$defaultPreferences['push_notifications'] = true;
$defaultPreferences['theme'] = 'light';
$defaultPreferences['language'] = 'zh';
$defaultPreferences['newsletter_subscribed'] = false;

// Ausgangsergebnis
print_r($defaultPreferences);
?>

Ausgangsergebnis:

 Array
(
    [email_notifications] => 1
    [sms_alerts] => 
    [push_notifications] => 1
    [theme] => light
    [language] => zh
    [newsletter_subscribed] => 
)

Auf diese Weise können wir dieses Array, wenn ein neuer Benutzer registriert wird, als anfängliche Einstellungen verwenden.

Verwendet in Verbindung mit Benutzerdaten

In den tatsächlichen Anwendungen können diese Standardeinstellungen mit der Datenbankbenutzertabelle verknüpft werden. Zum Beispiel bei der Registrierung eines Benutzers: