ogranicz ciąg do pierwszych 5 słów lub pierwszych 42 znaków w PHP
Jeśli mam w PHP ciąg znaków, który jest nieprzyjemnie długi w PHP i chcę go skrócić, a następnie dodać do niego coś.
Chcę skrócić go do pierwszych 6 słów lub 42 znaków, cokolwiek jest krótsze, a następnie dodać do niego „...”, jeśli zostało skrócone.
Jedyny przypadek, w którym nie zostałby skrócony, a „...” nie zostałoby dodane, to gdyby był pierwotnie mniej niż 6 słów lub 42 znaki.
Jak mogę to zrobić w PHP?
Logicznie myślę, że podzieliłbym ciąg za pomocą białej przestrzeni, a następnie dodałem każdą rzecz przed białą spacją w tablicy i zabrałbym tylko 6 pierwszych elementów z tej tablicy i zapisałem je na nowym łańcuchu.
Oto kod, który mam do tej pory:
str_1 = 'The quick brown fox jumped over the lazy dog';
$words = explode(" ", $str_1);
$counter = 0;
str_2 = '';
foreach($words as $word){
if($counter < 5){
//append $words[counter] to str_2;
counter++;
}
else{
break;
}
}
Nie wiem, jak zrobić resztę dla liczenia znaków, porównywania lub dołączania.
Czy ktoś ma jakieś pomysły?