Aller au contenu

Limiter le nombre de caractere du resultat d'une requete


Sujets conseillés

Posté

Bonjour le Hub,

$reqpar=mysql_query("select nom, description from annuaire where partenaire='1'")

Je voudrais limiter a 50 caractere le resultat de la requete pour le champ description...

Merci pour votre aide

Posté

Bonjour,

J'utilise une expression réguliere qui permet de ne pas couper au milieu d'un mot :

Si $texte est la chaine à "couper" :

$nbcar = 50;
if (strlen($texte) > $nbcar) {
$extrait_texte = ereg_replace("(.{".$nbcar."})( .*)$","\\1 ...", $texte);
}
else {
$extrait_texte = $texte;
}

Posté

en effet j'avais mis en place la solution de captain mais ca coupe les mots

je vais essayre la tienne...

merci

  • 1 year later...
Posté (modifié)

Bonjour,

J'inaugure le premier poste par ici :)

Je cherche à faire la meme chose, mais je ne vois pas du tout par quoi remplacer $texte.

Serait il possible d'avoir un peu plus d'explication.

Je précise, on est pas marié phph et moi, on vient de se rencontré... :P

Modifié par Rikle_S
Posté

$texte est la chaîne de caractères que tu veux tronquer (si elle dépasse 50 caractères dans notre exemple).

Essayes avec une phrase au hasard :

$texte = "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Pellentesque lobortis felis id sem. Mauris ut pede eget tortor condimentum elementum. Aliquam lacinia. Donec pulvinar felis.";

Tu ajoutes ensuite le code ci-dessus en rajoutant à la fin un echo :

echo $extrait_texte;

Posté

<?php

//TRANSFORMER EN FONCTION

function nocut_word( $src, $nb )

{

if ( strlen( $src ) > $nb ) {

$extrait_texte = ereg_replace( "(.{" . $nb . "})( .*)$","\\1 ...", $src );

}else {

$extrait_texte = $src;

}

return $extrait_texte;

}

//EOS.

#Pour utilisation tu écriras :

nocut_word( $icimontext, $icilenombredecaracteres );

?>

Cdlt.

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...