Rechercher un caractère et le remplacer

Eléphanteau du PHP | 24 Messages

05 juin 2014, 10:09

Bonjour,

J'ai un petit problème,

je veux chercher un caractère qui est : | (la barre verticale) dans un fichier et le remplacer par un <br/>

Voilà mon code :
 $motif='|';
    $fichier = "http://wcf.tourinsoft.com/Syndication/cdt65/b1155573-8443-49fb-a3d0-bb05526278e6/Objects"
    if (preg_match($motif,$description1))
    {

$onlyconsonants = str_replace($motif, "<br/>");
    
    }
    echo $description1;
    
Quelqu'un pourrait m'aider à comprendre les erreurs de mon code...
Ah j'oubliai, le fichier que je dois traiter est un fichier xml, je l'ai parcouru et j'ai afficher différentes valeur avec un code php.

Merci à vous tous

Mammouth du PHP | 1339 Messages

05 juin 2014, 11:01

$onlyconsonants = str_replace($motif, "<br/>", $fichier);
http://www.php.net/manual/fr/function.str-replace.php

mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] );
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphanteau du PHP | 24 Messages

05 juin 2014, 11:15

Ok merci de ta réponse Elie
En fait , j'ai fait :
$motif = '/|/';
     if(preg_match($motif,$photo1)){
      echo 'Le motif  <em>' . $motif . '</em> est bien présent dans la chaîne analysée.';}
Avec ça j'ai réussi à chercher et trouve le caractère ... Mais maintenant je voudrai le remplacer en faisant:
 $photo1 = str_replace('|' ,'<br/>');
Mais ça ça ne fonctionne pas du tout ................ :?

Quelqu’un peut m'aider ? merci :)

Mammouth du PHP | 1339 Messages

05 juin 2014, 11:18

Ma réponse est pourtant clair ...
Tant que tu n'auras pas compris qu'il faut 3 variables dans la fonction str_replace
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphanteau du PHP | 24 Messages

05 juin 2014, 11:33

ok ok j'avais pas saisi

J'ai modifié mon code ce qui donne :
  $motif = array('/|/');
     $replace= array('<br/>');
     $tableau=array('/|/',"!");

     if(preg_match($motif,$photo1))
     {
     
    echo $remplacement = str_replace($motif,$replace,$tableau);

     }
Mais cela ne fonctionne pas non plus...

Mammouth du PHP | 1339 Messages

05 juin 2014, 11:48

 $motif = '|';
    $fichier = "http://wcf.tourinsoft.com/Syndication/cdt65/b1155573-8443-49fb-a3d0-bb05526278e6/Objects"
    if(strstr($fichier, $motif) !== FALSE) {
     $onlyconsonants = str_replace($motif, "<br/>", $fichier);   
    }
En fait, je sais pas vraiment d'ou sort tes variables $description1, $photo1 donc on sait pas trop ce que tu veux faire ...

Je t'invite a lire la fonction strstr (http://www.php.net/manual/fr/function.strstr.php) et str_replace (http://www.php.net/manual/fr/function.str-replace.php) que tu ne semble toujours pas avoir compris puisque que tu met un array() en 3eme variables...
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphanteau du PHP | 24 Messages

05 juin 2014, 12:00

$motif = '|';
$fichier = "http://wcf.tourinsoft.com/Syndication/cdt65/b1155573-8443-49fb-a3d0-bb05526278e6/Objects";
        
    if (strstr($fichier, $motif) !== FALSE) 
    {
        
     $onlyconsonants = str_replace($motif, "<br/>", $fichier);  
        
    }
     
?>
euh ça ne fonctionne pas, j'ai toujours les | ...
En fait mes variables m'ont servi à parceller mon fichier xml , par exemple
$description = $item2->getElementsByTagName('ListingDESCRIPTIONCOMMERCIALE');

Mammouth du PHP | 1339 Messages

05 juin 2014, 12:03

Bah en fait on cherche des | dans la chaine $fichier qui n'en a pas ...
Remplace $fichier par ta $variables qui a des |
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphanteau du PHP | 24 Messages

05 juin 2014, 14:11

C'est la variable $photo1 ou il y a des |
donc j'ai :
$motif = '|';

    if (strstr($photo1, $motif) !== FALSE) 
    {
        
     $replace = str_replace($motif, '<br/>', $photo1);  
        
    }
     
Mais c'est toujours pareil.... je n'ai pas de saut de ligne et j'ai toujours " | '

Mammouth du PHP | 1339 Messages

05 juin 2014, 15:01

Je serais toi, j'abandonnerai.
Ou alors met ta page entiere sur http://pastebin.com/ ou ici directement.

Parce que chez moi ca marche :
<?php

	$photo1 = 'Developpeur|c\'est un|metier';
	$motif = '|';       
    echo (strstr($photo1, $motif) !== FALSE) ? str_replace($motif, '<br/>', $photo1) : $photo1;
	
	/* Developpeur<br/>c'est un<br/>metier */
	
?>
Bon sinon tu me fais un message privé et on se fait un TeamViewer