Start · Sprachen · PHP · Referenz · enchant_broker_get_dict_path

enchant_broker_get_dict_path

Funktion

Gibt den Verzeichnispfad zurück, der für ein bestimmtes Enchant-Backend-Dictionary-Verzeichnis konfiguriert ist.

seit PHP 8.0.0 Kategorie: string

Signatur

enchant_broker_get_dict_path(EnchantBroker $broker, int $dict_type): string|false

Beschreibung

enchant_broker_get_dict_path ermittelt den Pfad zu einem Wörterbuchverzeichnis, das für ein bestimmtes Enchant-Backend verwendet wird. Dies ist nützlich, wenn man wissen möchte, wo Enchant nach Wörterbuchdateien sucht, beispielsweise um eigene Wörterbücher an der richtigen Stelle abzulegen oder Konfigurationsprobleme zu diagnostizieren.

Der Parameter dict_type legt fest, welches Backend abgefragt werden soll. Typischerweise wird hier eine der Enchant-Konstanten wie ENCHANT_MYSPELL oder ENCHANT_ISPELL übergeben, um den zugehörigen Pfad zu erhalten.

Die Funktion ist das Gegenstück zu enchant_broker_set_dict_path, mit der man den Pfad setzen kann. Beide Funktionen zusammen ermöglichen eine flexible Verwaltung der Wörterbuchverzeichnisse innerhalb einer Enchant-Broker-Instanz.

Parameter

Name Typ Default Beschreibung
$broker Pflicht EnchantBroker Eine gültige Enchant-Broker-Ressource, die zuvor mit enchant_broker_init erzeugt wurde.
$dict_type Pflicht int Der Backend-Typ, dessen Pfad abgefragt werden soll. Gültige Werte sind z. B. ENCHANT_MYSPELL oder ENCHANT_ISPELL.

Rückgabewert

Typ
string|false
Beschreibung
Gibt den konfigurierten Verzeichnispfad als Zeichenkette zurück, oder false, wenn kein Pfad gesetzt ist oder ein Fehler aufgetreten ist.

Beispiele

Wörterbuchpfad für MySpell-Backend auslesen

<?php
$broker = enchant_broker_init();

// Pfad für das MySpell-Backend abfragen
$path = enchant_broker_get_dict_path($broker, ENCHANT_MYSPELL);

if ($path !== false) {
    echo 'MySpell-Wörterbuchpfad: ' . $path . PHP_EOL;
} else {
    echo 'Kein Pfad für MySpell gesetzt.' . PHP_EOL;
}

enchant_broker_free($broker);
Kein Pfad für MySpell gesetzt.

Pfad setzen und anschließend auslesen

<?php
$broker = enchant_broker_init();

// Wörterbuchpfad für MySpell setzen
enchant_broker_set_dict_path($broker, ENCHANT_MYSPELL, '/usr/share/myspell/dicts');

// Gesetzten Pfad wieder auslesen
$path = enchant_broker_get_dict_path($broker, ENCHANT_MYSPELL);

if ($path !== false) {
    echo 'Konfigurierter MySpell-Pfad: ' . $path . PHP_EOL;
} else {
    echo 'Pfad konnte nicht gelesen werden.' . PHP_EOL;
}

enchant_broker_free($broker);
Konfigurierter MySpell-Pfad: /usr/share/myspell/dicts

// Wichtig · Fallstricke

Die Funktion ist nur verfügbar, wenn PHP mit Enchant-Unterstützung kompiliert wurde (--with-enchant). Ab PHP 8.0 wird statt einer Ressource ein Objekt vom Typ EnchantBroker verwendet. In älteren PHP-Versionen (5.x–7.x) war der Parameter ein resource-Typ.

Nicht alle Enchant-Backends unterstützen anpassbare Pfade. Wenn ein Backend keinen konfigurierbaren Pfad kennt, wird false zurückgegeben, obwohl kein Fehler vorliegt. Prüfe daher immer den Rückgabewert explizit mit === false.