(PHP 4 >= 4.0.2, PHP 5)
pspell_new — Lädt ein neues Wörterbuch
pspell_new() öffnet ein neues Wörterbuch und gibt die Kennung des Wörterbuch-Links für die Verwendung in anderen pspell-Funktionen zurück.
Schauen Sie sich für weitere Informationen und Beispiele das pspell-Handbuch (auf englisch) auf der Website » http://aspell.net/ an.
Der Sprachencode, der aus dem zweibuchstabigen ISO 639-Sprachencode und, nach einem Binde- oder Unterstrich, einem optionalen zweibuchstabigen ISO 3166-Ländercode besteht.
Die angeforderte Schreibweise für Sprachen mit mehr als einer Schreibweise, wie zum Beispiel Englisch. Bekannte Werte sind 'american', 'british' und 'canadian'.
Enthält zusätzliche Informationen, um zwischen zwei Wortlisten mit der selben Sprache und den selben Parametern für die Schreibweise zu unterscheiden.
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 Sie bei dessen Verwendung vorsichtig sein sollten.
Der Modus, in dem die Rechtschreibprüfung arbeitet. Es stehen mehrere Modi zur Verfügung:
Gibt bei Erfolg die Kennung eines Wörterbuch-Links zurück. Im Fehlerfall wird FALSE zurückgegeben.
Beispiel #1 pspell_new()-Beispiel
<?php
$pspell_link = pspell_new("de", "", "", "",
(PSPELL_FAST|PSPELL_RUN_TOGETHER));
?>
Just as a small tip, I noticed that when you call pspell_new multiple times, php does not free memory usage when the resource is destroyed, but only when your entire script has completely finished. So if you create a pspell_link resource and you intend to use it again somewhere else, instead of calling pspell_new again, keep track of your original pspell_link resource instantiation, and use it again, your script will run much more efficiently.
I was switching between 16 dictionaries by just calling a new pspell_new everytime, my memory usage on the server grew until i hit a failure/php core dump. :-/ So i stored each pspell resource in an array keyed by language, and checked if the resource existed first, before creating one if needed.
I hope that helps someone.
I think the language and spelling parameters differs on different PHP versions and/or aspell/UNIX distributions.
My PHP 5.2.6 Debian ignores the spelling parameter.
Instead:
For Americans use en_US as language.
For British use en_GB (not en_UK)
For Canadian use en_CA