Ucinanie częsci tekstu w php


(stanek.94) #1

Witam! Mam coś takiego że mam system newsów, pobieram treść newsa który ma max 500 znaków i zapisuję do bazy. nastepnie chciałbym wyświetlać wszystkie newsy ale nie w całości a jedynie 4 pierwsze linijki a całość dopiero po wejściu w konkretny news. Ma ktoś jakiś pomysł? Jest jakaś funkcja która utnie tekst po 4 linijkach?


(Konrad Kosowski) #2

Linijki rozpoznajesz po czym?


(stanek.94) #3

Chyba nie rozpoznaje :?

Mam tak

‘.nl2br($wiersz[2]).’
[/code]


(Konrad Kosowski) #4

Trochę to będzie na około… ale skoro takie dane masz w bazie, to powinno wystarczyć:

= nl2br($wiersz[2]);$limit = 4;//ilość linijek$array = explode(", $news, $limit+1);''.$array[0].'.$array[1].'.$array[2].'.$array[3].'';[/code]

(M@ster) #5

@tfl

W tym echo to już lepiej implode zrobić niż tak z palca wypisywać :wink: Zwłaszcza że wyciągnąłeś 4 do zmiennej $limit.


(Adi Aj) #6

Albo pójść w coś prostego :slight_smile:

Mamy tekst który ma np. 400 znaków. Chcemy wyświetlić 4 linijki i sprawdziliśmy, że te 4 linijki zajmują, np. 230 znaków więc wstawmy coś takiego:

echo substr(nl2br($wiersz[2]), 0, 230).'...';

(Biuro) #7

Można by to rozwiązać też tak:

$news = nl2br($wiersz[2]);

for($x = 0; $x < 4; $x++) echo $news[$x] . "
";