Quiero convertir una cadena larga como reallyreallyreallyreallyreallylongfilename
en algo así como reallyreallyre...yreallyreally
.Reducir una longitud de una cadena PHP e insertar una elipsis
Básicamente, encuentre el medio de la cadena y reemplace todo allí hasta que la longitud de la cadena sea < 30 caracteres incluyendo una elipsis para indicar que ha habido partes de la cadena reemplazadas.
Este es mi código donde he intentado esto:
function cutString($input, $maxLen = 30)
{
if(strlen($input) < $maxLen)
{
return $input;
}
$midPoint = floor(strlen($input)/2);
$startPoint = $midPoint - 1;
return substr_replace($input, '...', $startPoint, 3);
}
que encuentra el centro de la cadena y reemplaza un carácter cada lado con .
pero la cosa es que no puedo encontrar la manera de hacer que ciérrelo a 30 caracteres, o lo que sea $maxLen
.
Esperemos que entender mi pregunta, no creo que hice un muy buen trabajo en explicar que 8)
Gracias.
eso le da una forma que la salida es '...' ... 'reallyreallyreallyreallyreally' al frente de la cadena,. –
Er, debería poner el '...' en el medio de la cadena James, allí hay dos llamadas substrs. – Amber
Sé que hay. Pero si pongo ese código en mi función 'cutString', devuelve una cadena con las elipses en la parte delantera de la cadena. –