(PECL ps >= 1.1.1)
ps_hyphenate — Переносит слово
$psdoc
, string $text
): array|falseПереносит указанное слово. Функция ps_hyphenate() оценивает дефисы значения (устанавливается ps_set_value()) и дефисы параметра (устанавливается ps_set_parameter()). Перед вызовом этой функции необходимо установить дефис.
Для работы функции требуется, чтобы категория языкового стандарта LC_CTYPE была установлена корректно. Это делается, при инициализации модуля с использованием переменных окружения. В системах Unix для получения дополнительной информации прочтите справочную страницу языковых стандартов.
psdoc
Идентификатор ресурса файла postscript, возвращённый функцией ps_new().
text
text
не должен содержать никаких символов, отличных от букв.
Возможные позиции для переносов возвращаются в виде массива целых чисел.
Каждое число - это позиция символа в text
,
после которой может быть выполнен перенос.
Массив целых чисел, указывающий положение возможных переносов в тексте или false
в случае возникновения ошибки.
Пример #1 Перенос текста
<?php
$word = "Koordinatensystem";
$psdoc = ps_new();
ps_set_parameter($psdoc, "hyphendict", "hyph_de.dic");
$hyphens = ps_hyphenate($psdoc, $word);
for($i=0; $i<strlen($word); $i++) {
echo $word[$i];
if(in_array($i, $hyphens))
echo "-";
}
ps_delete($psdoc);
?>
Результат выполнения данного примера:
Ko-ordi-na-ten-sys-tem