Napisałem niedawno klasę do sprawdzania, czy ktoś nie strzela byków w swoim tekście.
Mam cichą nadzieję, że przyczynię się tym do podwyższenia poziomu treści pisanych w naszym pięknym języku, a zwłaszcza w internecie. Wszak nie każdy ma Firefoxa z korektą pisowni

Klasa korzysta ze słownika ortograficznego PWN dostępnego w internecie na http://so.pwn.pl/, dlatego może być dość powolna przy sprawdzaniu bardzo długich tekstów. Natomiast z tymi krótszymi poradzi sobie szybciej

Kod klasy:
<?php /** * Klasa służąca do korekty ortograficznej * korzystająca z internetowego słownika ortograficznego PWN (http://so.pwn.pl/) */ class korektaOrtograficzna { /** * tekst do sprawdzenia */ private $text; /** * tablica z wyrazami posiadającymi błędy ortograficzne */ /** * sprawdzony tekst z zaznaczonymi błędami */ public $markedText; /** * konstruktor * uruchamia odpowiednie metody * @param string text tekst do korekty * @return void */ public function __construct($text) { $this->text = $text; $this->checkText(); } /** * łączy się ze słownikiem ortograficznym PWN * i sprawdza czy wyraz jest poprawny * @param string $word * @return bool */ private function isCorrectWord($word) { } /** * przetwarza podany tekst na tablicę z wyrazami, * usuwa ewentualne znaki interpunkcyjne i znaczniki HTML * @param void * @return array */ private function text2array() { } /** * dokonuje korekty podanego tekstu, * przekazuje niepoprawne wyrazy do tablicy z błędami * oraz wyróżnia niepoprawne wyrazy * i przekazuje zmodyfikowany tekst do odpowiedniej zmiennej * @param void * @return void */ private function checkText() { $textArray = $this->text2array(); foreach($textArray as $word) { if(!$this->isCorrectWord($word)) { $this->mistakeArray[] = $word; $mistakeArrayMarked[] = '<span style="color:red; font-weight:bold;">'.$word.'</span>'; } } } } ?>
Przykład użycia:
<?php $tekstDoSprawdzenia = 'Szedł Jasió przes las i zgubił czerfony pas.'; $objKorektaOrtograficzna = new korektaOrtograficzna($tekstDoSprawdzenia); ?>