Couper une chaine sans couper les mots et sans dépasser les lignes

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 643 fois - Téléchargée 32 fois

Contenu du snippet

d'accord, je vous l'accorde on a déja vu pas mal de fois ce code sur phpcs...Erreur... on a déja vu pas mal de fois des fonctions qui ressemble à ce bout de code qui font à peu de choses près la même chose mais pas tout à fait...

alros voila mon code coupe une chaine sans couper les mots... sauf que, au contraire de toutes les autres fonctions vues ici, elle s'arrête au dernier caractère espace avant la longueur limite (et non après)...

Source / Exemple :


function cutStr($str)					
	if(strlen($str)>$limite){
		$tStr = split(" ",$str);
		$j=0;
		
		$str1="";
		$str2="";
		$i = strlen($str1+$tStr[$j])+1;
		
		while($i<$limite){
			$str1 = $str1." ".$tStr[$j];
			$j++;
			$i = strlen($str1)+strlen($tStr[$j])+1;
		}
		
		$str2 = substr($str,strlen($str1),strlen($str)-strlen($str1));
	
		echo '<tr>';
		echo trim($str1)."<br>";
		echo trim($str2);
	}
	else{
		echo $str2;
	}
}

Conclusion :


voila bon ça n'a rien d'exceptionnelle...

mais bon ça fait un bout de temps que je fais du php et je n'avais encore jamais poster de source (encore jamais qqch d'inédit...)

A voir également

Ajouter un commentaire

Commentaires

cs_GRenard
Messages postés
1662
Date d'inscription
lundi 16 septembre 2002
Statut
Membre
Dernière intervention
30 juillet 2008
1 -
Euh, tu pourrais pas faire ta fonction pour qu'elle RETOURNE cette la valeur recherchée... ca srait beaucoup plus utile...
et c'est quoi ce <tr> qui traine :P ?
cs_GRenard
Messages postés
1662
Date d'inscription
lundi 16 septembre 2002
Statut
Membre
Dernière intervention
30 juillet 2008
1 -
Oh et la limite? elle est ou ?
cs_Anthomicro
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8 -
Salut,

le problème est que justement si ça ne coupe pas un mot bah tu peux très bien déformer tout un site...

Utilise la fonction wordwrap() sinon, c'est beaucoup plus rapide et plus simple d'utilisation.

a ++
fuckya
Messages postés
125
Date d'inscription
mercredi 31 mars 2004
Statut
Membre
Dernière intervention
8 juin 2006
-
Tu pourrais eventuellement vérifier que ton code marche bien avant de poster ;)

function y'a un { apres ;)
coockiesch
Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3 -
Salut!
J'aime pas trop l'idée d'avoir une fonction comme strlen dans une boucle... D'ailleurs, pit être tout simplement trop de strlen...

@++

R@f

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (cs_FreakDev)