Couper une chaine de caractères
7 messages
• Page 1 sur 1
- modv
- WRInaute impliqué

- Messages: 551
- Inscription: 31 Oct 2007
Couper une chaine de caractères
Salut à tous,
Je cherche le moyen de couper une chaine de caractères sans découper un mot, moi j'utilise :
Mais il y a quelque chose de plus court et plus efficace il me semble !
Je cherche le moyen de couper une chaine de caractères sans découper un mot, moi j'utilise :
- Code: Tout sélectionner
if(strlen($row["desc"])>68) {
$row["desc"] = str_cut($row["desc"],68);
$row["desc"] = $row["desc"].'...';
}
Mais il y a quelque chose de plus court et plus efficace il me semble !
-

5_legs - WRInaute passionné

- Messages: 2072
- Inscription: 30 Avr 2006
Re: Couper une chaine de caractères
-

anemone-clown - WRInaute passionné

- Messages: 1276
- Inscription: 11 Nov 2007
Re: Couper une chaine de caractères
Bonjour,
d'où sort cette fonction str_cut??? Je connais mb_strcut dans le cas du multibytes, mais sinon???
source : -http://fr3.php.net/manual/fr/function.strrpos.php
d'où sort cette fonction str_cut??? Je connais mb_strcut dans le cas du multibytes, mais sinon???
- Code: Tout sélectionner
function TruncateString($phrase, $longueurMax = 150) {
$phrase = substr(trim($phrase), 0, $longueurMax);
$pos = strrpos($phrase, " ");
$phrase = substr($phrase, 0, $pos);
if ((substr($phrase,-1,1) == ",") or (substr($phrase,-1,1) == ".")) {
$phrase = substr($phrase,0,-1);
}
if ($pos === false) {
$phrase = $phrase;
}
else {
$phrase = $phrase . "...";
}
return $phrase;
}
source : -http://fr3.php.net/manual/fr/function.strrpos.php
-

5_legs - WRInaute passionné

- Messages: 2072
- Inscription: 30 Avr 2006
Re: Couper une chaine de caractères
anemone-clown a écrit:Bonjour,
d'où sort cette fonction str_cut??? Je connais mb_strcut dans le cas du multibytes, mais sinon???
- Code: Tout sélectionner
function TruncateString($phrase, $longueurMax = 150) {
$phrase = substr(trim($phrase), 0, $longueurMax);
$pos = strrpos($phrase, " ");
$phrase = substr($phrase, 0, $pos);
if ((substr($phrase,-1,1) == ",") or (substr($phrase,-1,1) == ".")) {
$phrase = substr($phrase,0,-1);
}
if ($pos === false) {
$phrase = $phrase;
}
else {
$phrase = $phrase . "...";
}
return $phrase;
}
source : -http://fr3.php.net/manual/fr/function.strrpos.php
En tout cas pour l'utiliser à plusieurs endroits : cette fonction fonctionne à merveille
-

spout - WRInaute accro

- Messages: 4377
- Inscription: 14 Mai 2003
Re: Couper une chaine de caractères
- Code: Tout sélectionner
<?php
function truncate($string, $max, $rep = '...') {
$stringlength = strlen($string);
$string = $string." ";
$string = substr($string,0,$max);
$string = substr($string,0,strrpos($string,' '));
if($stringlength > $max)
$string = $string.$rep;
return $string;
}
?>
-

anemone-clown - WRInaute passionné

- Messages: 1276
- Inscription: 11 Nov 2007
Re: Couper une chaine de caractères
@spout : à part que la fonction que tu as mis n'enlèves pas le surplus de virgules et points à la fin de la chaîne
, elle fait quoi de plus par rapport à celle que j'ai indiqué???
7 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- PHP et MagpieRSS, couper une chaine de caractères
- Extraire une chaine de caractères
- fractionner une chaine de caractères
- Compter le nombre de caractères d'une chaine
- rewriting avec une variable de chaîne de caractères
- Compter le nombre de mots dans une chaine de caractères
- [résolu] Mettre un " dans une chaine de caractères
- Tester des caractères spéciaux dans une chaine
- [PHP] Limite chaîne de caractères à partir d'un caractère donné
- Afficher les lignes contenant uniquement cette chaine de caractères
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
