Можно на PHP, можно на JS. Алгоритм (его сложность) - зависит от вас (как вы будете делить, будете ли учитывать весомость и длину слов при переносе). Реализация - от ваших исходных (что у вас где лежит и из чего берется - то ли это голый HTML на локалке и вы ручками вводите текст, а то ли это удаленный сервер с MySQL с формированием страницы через PHP).