Znajdujesz się na stronach starej wersji serwisu!
Aktualną wersję znajdziesz pod adresem webmade.org.

Ucinanie tekstu do odpowiedniej długości

Czasem spotykamy się z sytuacją, gdy chcemy w jakimś wąskim miejscu na stronie, umieścić link - jednak w taki sposób, by nie rozwalał nam całej strony, ani też nie przenosił się do następnej linijki. Rozwiązaniem może być ucinanie ciągu znaków do określonej długości. W tym celu stworzymy funkcję, która będzie robiła to za nas.

Po pierwsze musimy nazwać naszą funkcję. W tym przypadku jest to utnij($tekst,$ile) gdzie obie zmienne będą ustalane przez nas.

function utnij($tekst,$ile) {

Pierwszym zadaniem, które będzie wykonywać funkcja jest liczenie długości naszej zmiennej $tekst, która będzie przechowywać dany tekst do skrócenia. W tym celu piszemy:

$licz = strlen($tekst);

W kolejnym kroku, nasza funkcja będzie sprawdzać czy liczba znaków z naszego tekstu do skrócenia jest większa, lub równa liczbie znaków, po których nasz $tekst ma zostać ucięty (jest to zmienna $ile)...

if ($licz>=$ile) {

...i jeśli zapytanie zostaje spełnione, tekst zostaje skrócony do odpowiedniej ilości znaków, oraz na końcu dodawany jest wielokropek.

$tnij = substr($tekst,0,$ile);
$uciete = $tnij."...";
}

Jeżeli jednak liczba znaków z naszego tekstu jest mniejsza od maksymalnej jej wartości, wtedy tekst zostaje poprostu przepisany bez zmian.

else {
$uciete = $tekst;
}

Musimy jeszcze dopisać linijkę, która będzie pokazywać tekst już po obróbce.

return $uciete;
}

Na końcu pozostaje nam sprawdzenie funkcji. Pierwszą wartością jest zmienna $tekst, która musi być określona przed wywołaniem funkcji, druga wartość jest to pole, które odnosi się do zmiennej $ile i może być ustawione na dowolną ilość znaków. W naszym przypadku wynosi 20:

echo utnij($tekst,20);

Cały kod wygląda następująco:

function utnij($tekst,$ile) {
$licz = strlen($tekst);
if ($licz>=$ile) {
$tnij = substr($tekst,0,$ile);
$uciete = $tnij."...";
}
else {
$uciete = $tekst;
}
return $uciete;
}

echo utnij($tekst,20); // przykład zastosowania

Piotr 'asit' Chrobak

© 2004-2006 by webmade.org
kamieniarstwo :linki sponsorowane
valid xhtml
valid css