PDA

Arată versiune īntreagă : Ajutor php - limitare text



Andreiutzu
24.07.2009, 22:58
Salut!

Am si eu o rugaminte la voi.
Imi puteti spune cum sa limitez si eu un text la o singura propozitie?
De exemplu:
In baza de date am "Vino si tu pe cwr.ro. Te asteptam!".
Pe site vreau sa imi apara doar "Vino si tu pe cwr.ro".
Este doar un exemplu. Textul poate fi mai lung sau mai scurt.

Am incercat cu substr() dar imi limiteaza doar caracterele, nu propozitia.

Am vazut ca se poate pe stelisti.mysport.ro si pe inca cateva siteuri pe care nu mi le amintesc.

Multumesc!

XtrimVerSuS
25.07.2009, 07:48
<?php

$text = 'Vino si tu pe CWR. Te asteptam!';

$propozitie = explode('.', $text);
$propozitie = explode('!', $propozitie[0]);
$propozitie = explode('?', $propozitie[0]);
echo $propozitie[0];

?>


Codul de mai sus va afisa 'Vino si tu pe CWR'.

Daca textul ar fi: 'Ai auzit de CWR? Vino si tu. Te asteptam!', ar returna 'Ai auzit de CWR?'

micku7zu
25.07.2009, 09:15
Xtrimversus , este foarte bine cum ai spus tu , exact asa mam gandit si eu , doar ca este o problema ... Daca este de exemplu textul :"Vino si tu pe cwr.ro , aici vei gasii multe. Te asteptam! " . Atunci el va scoate prima propozitie : Vino si tu pe cwr - A doua prop : ro,aici vei gasii multe .....

Momentan nu stiu alta solutie , dar ma mai gandesc , si sper sa revin cu una ...

dorikut
02.12.2009, 13:40
Xtrimversus , este foarte bine cum ai spus tu , exact asa mam gandit si eu , doar ca este o problema ... Daca este de exemplu textul :"Vino si tu pe cwr.ro , aici vei gasii multe. Te asteptam! " . Atunci el va scoate prima propozitie : Vino si tu pe cwr - A doua prop : ro,aici vei gasii multe .....

Momentan nu stiu alta solutie , dar ma mai gandesc , si sper sa revin cu una ...

Mie mi-se pare ok. Semenele specificare ca separatoare de catre Xtrimversus nu includ in multimea lor caracterul ",".

Cu stima,
dorikut

micku7zu
02.12.2009, 18:20
@dorikut mai citeste odata postul meu cu atentie...

Eu vorbeam de punctul de la numele site-ului si nici de cum de virgula...

XtrimVerSuS
03.12.2009, 04:33
<?php

$text = 'Vino si tu pe CWR. Te asteptam!';

$propozitie = explode('. ', $text);
$propozitie = explode('! ', $propozitie[0]);
$propozitie = explode('? ', $propozitie[0]);
echo $propozitie[0];

?>


Am pus un spatiu dupa ".". Orice om, normal si cat de cat cult, foloseste spatiu dupa semnele de punctuatie.
Asta ar trebui sa-ti rezolve problema.