PHP 8.5.0 Alpha 1 available for testing

ps_hyphenate

(PECL ps >= 1.1.1)

ps_hyphenateUne palabras

Descripción

ps_hyphenate(resource $psdoc, string $text): array|false

Une la palabra pasada. ps_hyphenate() evalúa la valor hyphenminchars (establecido por ps_set_value()) y el argumento hyphendic (establecido por ps_set_parameter()). hyphendict debe ser establecido antes de llamar a esta función.

Esta función requiere que la configuración local LC_CTYPE esté correctamente hecha. Esto se realiza cuando la extensión es inicializada utilizando las variables de entorno. En sistemas Unix, consulte las páginas de manual de locale para más información.

Parámetros

psdoc

Identificador de un archivo postscript devuelto por ps_new().

text

text no debería contener caracteres no alfabéticos. Las posiciones posibles para los cortes son devueltas en un array de números enteros. Cada número es la posición del carácter en text después de que la unión pueda tener lugar.

Valores devueltos

Un array de enteros que indica la posición de los cortes posibles en el texto o false si ocurre un error.

Ejemplos

Ejemplo #1 Corta un texto

<?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);
?>

El ejemplo anterior mostrará :

Ko-ordi-na-ten-sys-tem

Ver también

add a note

User Contributed Notes 1 note

up
1
1manfactory at gmail dot com
8 years ago
The above example does NOT work with German Umlauts (äöü) properly.

I had to do the following to make it work.

setlocale (LC_CTYPE , "de_DE.iso88591"); # it does not work with "de_DE.utf8" and of course your system should run this locale setting

$hyphens = ps_hyphenate($psdoc, utf8_decode($word)); # only our couse if your source code is UTF8 coded

for($i=0; $i<mb_strlen($word); $i++) { # to be on the safe side

echo utf8_encode($word[$i]); # again only if your code is UTF8
To Top