Strona 1 z 1
Jak pobrać z łańcucha n wyrazów? (php)
: sob lip 02, 2005 10:01 am
autor: zephyr7
funkcja substr($lancuch, 0, 10) - pobiera z lancucha pierwszych 11 znaków.
Czy jest jakaś funkcja, która pobiera całe wyrazy, np. pierwsze 10 wyrazów?
To musi być banalnie proste, ale nie znam zbyt dobrze tego typu instrukcji w php.. Jeśli ktoś mógłby pomóc i napisać, jak to zrobić

Re: Jak pobrać z łańcucha n wyrazów? (php)
: sob lip 02, 2005 10:14 am
autor: viraptor
A masz golfiarskie podejście

[php]<?php
function word_limit($string, $length = 50, $ellipsis = "...") {
return (count($words = explode(' ', $string)) > $length) ? implode(' ', array_slice($words, 0, $length)) . $ellipsis : $string;
}
?>[/php]
$string to string, $length to ilość wyrazów, $ellipsis to dopełnienie stringa, jeśli w oryginale jest więcej wyrazów. Funkcja wzięta z
http://www.php.net/manual/en/function.explode.php
dzienx :) trochę niepotrzebnie zagmatwane...
: sob lip 02, 2005 10:22 am
autor: zephyr7
Nie da się prościej, bez funkcji?
Re: dzienx :) trochę niepotrzebnie zagmatwane...
: sob lip 02, 2005 10:25 am
autor: FanFataL
zephyr7 pisze:Nie da się prościej, bez funkcji?
A czy uzywanie własnych zdefiniowanych funkcji to coś trudnego ??
Pozdrawiam
...
Re: Jak pobrać z łańcucha n wyrazów? (php)
: sob lip 02, 2005 10:27 am
autor: bwo
Eee jak prościej bez funkcji.. Przecież i tak i tak musisz uyż jakiejś funkcji, a ta akurat jest bardzo zwieźle napisana.
ha, ha - już rozumiem, z manuala i pizzy...
: sob lip 02, 2005 10:29 am
autor: zephyr7
grzebię na otwartych bebechach mambo 4.5.2 i nie mogę sobie walnąć funkcji byle gdzie, ale explode to jest właśnie to, czego trzeba. Najpierw przypiszę pojedyncze wyrazy tablicy, a później wyświetlę pierwsze 10. Powinno działać.
Re: Jak pobrać z łańcucha n wyrazów? (php)
: sob lip 02, 2005 10:32 am
autor: bwo
Zrób sobie oddzielny plik ze swoimi funkcjami i je include'uj w potrzebnych plikach mamba, dzieki czmeu bedziesz miał porządek.
zrobiłem to tak:
: sob lip 02, 2005 10:42 am
autor: zephyr7
$wyrazy = explode(" ", $lancuch);
for ($w=0;$w<10;$w++){
echo($wyrazy[$w]." ");
}
łatwo, szybko i bez stresów

działa bez zarzutu!