Union de deux ligne de texte sur une seule.

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Union de deux ligne de texte sur une seule.

deux lignes de texte en une seule.

par Invité » 24 mars 2006, 13:28

Désolé, j'ai mal géré la présentation.
//Cas 1:
$txt = "Chaîne issu d'un fichier texte";
$txt = ereg_replace("\n\r", "...", $txt);
$txt = $txt."titi";
echo $txt; // => Résultat sur deux lignes
//Cas 2:
$txt = "Chaîne issu d'un fichier texte";
$txt = trim($txt)."titi";
echo $txt; // => Résultat sur une ligne
//Cas 3:
$txt = "Chaîne issu d'un fichier texte";
$txt = str_replace("\n\r", "...", $txt);
$txt = $txt."titi";
echo $txt; // => Résultat sur deux lignes

deux lignes de texte en une seule.

par Invité » 24 mars 2006, 13:21

Merci de vos réponses et suis persuadé que toutes les solutions proposées
soient dans le vrai.
Mon problème se résout avec le cas 2 (ci-dessous). Donc tout va bien.

Il reste juste un petit problème de culture personnel.
J'avais effectivement testé ereg_replace() et str_replace(), re-testé içi bas, sans résultats ??? Il semble (le pourquoi du "...") que le retour
charriot ne soit pas détecté (les "..." ne sont pas afficher alors qu'ils
devraient remplacer le RC) ?????????. Syntaxe ???, le \n\r ???, autre ???.

Voici mes diffèrentes tentatives:
//Cas 1:
$txt = "Chaîne issu d'un fichier texte";
$txt = ereg_replace("\n\r", "...", $txt);
$txt = $txt."titi";
echo $txt;  // => Résultat sur deux lignes
//Cas 2:
$txt = "Chaîne issu d'un fichier texte";
$txt = trim($txt)."titi";
echo $txt;  // => Résultat sur une ligne
//Cas 3:
$txt = "Chaîne issu d'un fichier texte";
$txt = str_replace("\n\r", "...", $txt); 
$txt = $txt."titi";
echo $txt;  // => Résultat sur deux lignes
[php]

Il ne faut pas être plus royaliste que le Roi, mais cela me chagrine un peut.

par jpaul » 24 mars 2006, 11:04

Jète un oeil sur la fonction str_replace()
à cela, ajoute une concaténation. N'oublie pas le retour chariot à la fin de la chaîne.
C'est vrai, ereg_replace est plus couteux, il faut lui préférer str_replace quand c'est possible. Le choix de mario est plus judicieux 8)

par mario » 24 mars 2006, 07:55

Jète un oeil sur la fonction str_replace()
à cela, ajoute une concaténation. N'oublie pas le retour chariot à la fin de la chaîne.

par jpaul » 24 mars 2006, 07:49

Ast tu essayé avec ereg_replace ?
Par exemple :
ereg_replace("\n\r", "", $txt);
Ou encore mieux trim (avant la concaténation bien sûr) ?
trim($txt);
$txt = $txt."titi"; 

Union de deux ligne de texte sur une seule.

par Invité » 24 mars 2006, 00:23

bonjours,
Voici mon petit problème:
je recupère une chaine de caractère issu d'un fichier ds variables $txt,
Je souhaiterai ajouter à la suite de cette chaine par exemple un mot. Cela peut paraître fort simple, mais mon problème est de gérer le retour charriot.
$txt = "Chaîne issu d'un fichier texte";
si je fais ensuite:
$txt = $txt."titi";
echo $txt // me donne titi sur la ligne suivante.
Il s'agit donc entre temps de supprimer le retour charriot. J'ai tenter avec $txt = addcslashes($txt, "\"'\n\r"); //=> Le plus proche que j'ai trouvé.
J'obtient ce que je veut, mais avec les slashs en prime (c'est évidemment le but de cette fonction entre autre). J'ai regarder coté expressions régulières sans trop de succès, mais je pense qu'il doit y avoir une fonction ou code simple à l'image de addcslashes() (sans les \).
Merci pour votre attention.