Signatur
Beschreibung
pspell_config_runtogether() konfiguriert eine PSpell-Konfiguration so, dass zusammengeschriebene Wörter (sogenannte Run-Together-Words) als korrekt akzeptiert werden. Dies ist insbesondere für Sprachen relevant, die Komposita durch direktes Zusammenfügen bilden, wie z. B. Deutsch oder Finnisch.
Die Funktion muss aufgerufen werden, bevor das Dictionary mit pspell_new_config() geöffnet wird – also während der Konfigurationsphase. Nachträgliche Änderungen an bereits geöffneten Wörterbüchern sind nicht möglich.
Wird $allow auf true gesetzt, akzeptiert der Rechtschreib-Checker zusammengesetzte Wörter, die durch Aneinanderreihen gültiger Wörter gebildet werden. Mit false wird dieses Verhalten deaktiviert und nur bekannte Wörter werden als korrekt angesehen.
- Nützlich bei der Rechtschreibprüfung von URLs, Bezeichnern oder domänenspezifischen Begriffen.
- Kann zu falsch-positiven Ergebnissen führen, wenn viele Wörter einfach zusammengeschrieben werden.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $config Pflicht | PSpell\Config | Eine PSpell-Konfigurationsinstanz, die zuvor mit pspell_config_create() erstellt wurde. |
|
| $allow Pflicht | bool | true, um zusammengesetzte Wörter als gültig zu akzeptieren; false, um dieses Verhalten zu deaktivieren. |
Rückgabewert
true bei Erfolg zurück, false bei einem Fehler.Beispiele
Zusammengeschriebene Wörter als gültig markieren
<?php
// Konfiguration erstellen
$config = pspell_config_create('de');
// Run-Together-Words erlauben
pspell_config_runtogether($config, true);
// Wörterbuch mit dieser Konfiguration öffnen
$speller = pspell_new_config($config);
// Prüfen ob ein zusammengesetztes Wort als korrekt gilt
$word = 'Haushaltsgegenstand';
if (pspell_check($speller, $word)) {
echo "'$word' ist korrekt geschrieben.";
} else {
echo "'$word' wurde als falsch erkannt.";
}
Run-Together deaktivieren (Standardverhalten)
<?php
// Konfiguration für Englisch erstellen
$config = pspell_config_create('en');
// Run-Together-Words explizit deaktivieren (Standard)
pspell_config_runtogether($config, false);
// Wörterbuch öffnen
$speller = pspell_new_config($config);
$word = 'helloworld';
if (pspell_check($speller, $word)) {
echo "'$word' gilt als korrekt.";
} else {
echo "'$word' gilt als falsch geschrieben.";
}
// Wichtig · Fallstricke
Achtung: Die PSpell-Erweiterung erfordert, dass die Bibliothek aspell auf dem Server installiert ist. Seit PHP 8.1 gibt die Funktion ein PSpell\Config-Objekt zurück statt einer Integer-Ressource – der erste Parameter ist entsprechend typisiert.
Das Aktivieren von Run-Together-Words kann zu einer erhöhten Anzahl falsch-positiver Korrektheitsmeldungen führen, da beliebige Aneinanderreihungen bekannter Wörter als korrekt gewertet werden. Dies sollte je nach Anwendungsfall sorgfältig abgewogen werden.
Wichtig: Diese Funktion wirkt nur in der Konfigurationsphase – sie muss vor dem Aufruf von pspell_new_config() gesetzt werden.