Limit d'affichage ....

Répondre
moogli
le 01/07/2004 à 23:07
moogli
Salut,

Vois je récupre un champ text de ma base de donnée et j'aimerais n'afficher qu'un certain nombre de mots....
j'ai fait sa
<?php
$news_tb=explode((" ",$news);
//disons que l'on prend ke les 50 1er mots
$re="";
for ($i=0;$i<50;$i++)
{
$re .=$news_tab[$i].' ';
}
?>

Je me demande si pas un moyen plus correct, moins bourrin, bref plus simple et efficace que celui ci?
Merci
Il en faut peu pour être heureux !!!!!
L4_Hyr3
le 01/07/2004 à 23:52
L4_Hyr3
apres avoir reflechi j'ai trouvé une autre methode qui peut marcher mais en fonction des lettres pas des mots ( jen suis pa sur vu ke je lai pa tester ) mais qui est encore plus bourrine ;)
elle consiste a recuperer ton texte en une variable, afficher la variable dans une textearea ou un truc du genre limité a un certain nb de caracteres, puis a recuperer ce que contient la textearea :p
Je penses pa que ca te serves mais c'est pour te montrer que ta methode n'est pas si bourrine ;)
epita promo 2009
Sedilbur
le 02/07/2004 à 00:08
Sedilbur
/* Peut-être avec un truc de ce genre (éfficace pour les news... */
$longueur=20; //20 caractères
$letexte="blablablablablablablablablablabla";
if (strlen($letexte)>$longueur)
{
$letexte = substr($letexte,0,$longueur)."...";
}

/* Ou alors regarde un peu cette fonction ça pourait peut-être t'être utilise */
wordwrap();
moogli
le 02/07/2004 à 01:02
moogli
C bien pour des news smiley
Le truc que faut compter le nb de caractères et je suis pas de tomber sur la fin d'un mots.
enfait je cherche la meme chose pour des mots (j'ai pas trops envie de coupé un mot).
Mais je va quand meme essayé
Merci
Il en faut peu pour être heureux !!!!!
moogli
le 02/07/2004 à 17:13
moogli
J'ai corrigé une tite bourde :
if (count($news_tab)<50)
{
$fin=count($news_tab);
}
else{
$fin=50;
}
$re="";
for ($i=0;$i<$fin;$i++)
$re .=$news_tab[$i].' ';

Voila cela permet d'évite les erreurs si le text comporte moins de 50 mot smiley
S
Si quelqu'un a une solution pus simple je sui prenneur :)
@+
Il en faut peu pour être heureux !!!!!
mojorisin
le 02/07/2004 à 19:24
mojorisin
Un code qui ne compte pas les mots mais se base sur le nombre de caractère. Ne coupe pas de mots en deux :o)
if(strlen($ligne)>150){
$espace = strpos($ligne,' ',150);
$phraseCoupee = substr($ligne, 0, $espace);

} else {

}


Pas tout a fait ce que tu souhaitais masi bon ca peut peut etre le faire ausi ;o)
echo ’16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlbxq’|dc
mojorisin
le 02/07/2004 à 19:25
mojorisin
lol fausse manip pas eu le temps de finir.
Enfin bon c'est pas grave :o)
Dans le if tu mets : echo $phraseCoupee;
dans le else tu mets echo $ligne;

vala :D
echo ’16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlbxq’|dc
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours