Chcę zamienić długi ciąg, taki jak reallyreallyreallyreallyreallylongfilename
, na coś takiego jak reallyreallyre...yreallyreally
.Wycinanie długości ciągu PHP i wstawianie elipsy
Zasadniczo znajdź środek ciągu znaków i zamień wszystko, aż długość ciągu znaków wynosi < 30 znaków, w tym elipsy, oznaczające, że zostały zastąpione części ciągu.
To jest mój kod gdzie Próbowałem to:
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);
}
Okazuje środek sznurka i zastępuje charakter obu stronach z .
ale jest to, że nie może pracować się, jak to zrobić przytnij go do 30 znaków lub cokolwiek innego, $maxLen
.
Mam nadzieję, że rozumiesz moje pytanie, nie sądzę, zrobiłem bardzo dobrą pracę w wyjaśniając 8)
Dzięki.
To tylko dodaje '' ... do przodu ciąg, więc wyjście jest '... reallyreallyreallyreallyreally'. –
Er, powinien umieścić '...' w środku łańcucha James, istnieją tam dwa wywołania substr. – Amber
Wiem, że są. Ale jeśli umieściłem ten kod w mojej funkcji 'cutString', zwraca ciąg znaków z elipsami z przodu ciągu. –