CakeFest 2024: The Official CakePHP Conference

pspell_config_create

(PHP 4 >= 4.0.2, PHP 5, PHP 7, PHP 8)

pspell_config_createErzeugt eine Konfiguration zum Öffnen eines Wörterbuchs

Beschreibung

pspell_config_create(
    string $language,
    string $spelling = "",
    string $jargon = "",
    string $encoding = ""
): PSpell\Config

Erzeugt eine Konfiguration zum Öffnen eines Wörterbuchs.

pspell_config_create() hat eine sehr ähnliche Syntax wie pspell_new(). Wenn pspell_config_create() direkt gefolgt von pspell_new_config() verwendet wird, hat das in der Tat genau das gleiche Ergebnis. Allerdings können nach dem Erzeugen einer neuen Konfiguration die pspell_config_*()-Funktionen verwendet werden, bevor pspell_new_config() aufgerufen wird, um von einer erweiterten Funktionalität zu profitieren.

Weitere Informationen und Beispiele sind im Online-Handbuch der pspell-Webseite zu finden: » http://aspell.net/.

Parameter-Liste

language

Der Sprachencode, der aus dem zweibuchstabigen ISO-639-Sprachencode und, nach einem Binde- oder Unterstrich, einem optionalen zweibuchstabigen ISO-3166-Ländercode besteht.

spelling

Die angeforderte Schreibweise für Sprachen mit mehr als einer Schreibweise, wie zum Beispiel Englisch. Bekannte Werte sind 'american', 'british' und 'canadian'.

jargon

Enthält zusätzliche Informationen, um zwischen zwei Wortlisten mit derselben Sprache und denselben Parametern für die Schreibweise zu unterscheiden.

encoding

Die Kodierung, in der die Wörter voraussichtlich sind. Gültige Werte sind 'utf-8', 'iso8859-*', 'koi8-r', 'viscii', 'cp1252', 'machine unsigned 16' und 'machine unsigned 32'. Dieser Parameter ist weitgehend ungetestet, weshalb bei dessen Verwendung Vorsicht geboten ist.

Rückgabewerte

Gibt eine PSpell\Config-Instanz zurück.

Changelog

Version Beschreibung
8.1.0 Gibt nun eine PSpell\Config-Instanz zurück; vorher wurde ein Ressource zurückgegeben.

Beispiele

Beispiel #1 pspell_config_create()-Beispiel

<?php
$pspell_config
= pspell_config_create("de");
pspell_config_personal($pspell_config, "/var/dictionaries/custom.pws");
pspell_config_repl($pspell_config, "/var/dictionaries/custom.repl");
$pspell = pspell_new_personal($pspell_config, "de");
?>

add a note

User Contributed Notes 1 note

up
0
mshort at mail dot com
6 months ago
This might help if you are trying to use multiple custom dictionaries especially if you don't have sudo access to the system aspell dictionary directory ...
I created three custom dictionaries (or are they word lists) using "aspell create master" and found a way to use them ...
1) Create 3 word lists, one word per line, wordlistA.txt, wordlistB.txt, and wordlistC.txt.
2) Create 3 masters ... aspell --lang=en create master ./my_LANG-dictA.rws < wordlistA.txt - repeat for B and C (lang needs to be already installed, I think any lang will work).
3) Create 3 multi files, my_LANGA.multi, contents: add my_LANG-dictA.rws) - repeat for B and C. Where my_LANGA can be any name in the same case as explained in the aspell manual.
4) Use any one of them (A B or C) with pspell ...
<?php
$pspell_config
= pspell_config_create('my_LANGC', '', ''. 'utf-8');
pspell_config_dict_dir($pspell_config, <location of my_LANGC.multi>);
if ((
$pspell = pspell_new_config($pspell_config)) == false) {
echo
'pspell_new_config() for LANGC FAILED!');
} else {
$word = 'PHPisgreat'];
if (
pspell_check($pspell, $word)) {
echo
"$word: Valid spelling";
} else {
$suggestions = pspell_suggest($pspell, $word);
echo
"$word: suggestions: $suggestions"
}
}
?>

The language arg for pspell_config_create() is the basename of the .multi file.
Note that I do not have a file $HOME/.aspell.conf.
Note that my .multi and .rws files are in the same directory, which I think is necessary.
The wordlist files are not needed once the masters are created.
To Top