[PHP] Problème de Fonction / Condition

Résolu
Bonjour à tous,

Je suis en train de développer un chat en php, mais lors de la création je suis tombé sur un problème que je n'arrive ni à comprendre ni à résoudre dans la partie d'envoie de message privé:

<?php
function PremiersMots($MaChaine, $apartir, $jusqua)   
{   
   $ChaineTab=explode(" ",$MaChaine);   
   for($i=$apartir; $i<$jusqua; $i++)   
   {   
      $NouvelleChaine.=" "."$ChaineTab[$i]";   
   } 
   return $NouvelleChaine;   
}
$func = PremiersMots("/w kira test", 0, 1);
echo $func;
if ($func == "/w"){echo 'test';}
?>


$func retourne bien "/w" mais la condition n'est pas remplie puisque 'test' ne s'affiche pas...
... Pourtant si $func retourne "/w" je ne comprends pas comment "/w" n'est pas équivalent à "/w" oO

Voila donc... Help Plz ^^
Configuration: Windows XP
Firefox 2.0.0.15

3 réponses

  1. Bonjour.

    Essaye en "échappant" le slash :
    if ($func == "\/w"){echo 'test';}
    1
    1. Aucun Changement :S

      Merci quand même :)
      d'autres idées ?
      1
      1. Bon, après tests :
        - $NouvelleChaine.=" "."$ChaineTab[$i]"; me renvoie une erreur (parce que $NouvelleChaine n'est pas défini avant. Peut-être que tu n'as pas ce problème chez toi...)

        - J'ai trouvé le "problème" ! Etudions le code, dans le cas PremiersMots("/w kira test", 0, 1)
        // J'ai rajouté cette ligne pour parer au problème précédent...
        $NouvelleChaine = "";
           $ChaineTab=explode(" ",$MaChaine);
        // => $ChainTab = Array("/w", "kira", "test")   
        // Vu les paramètres, on n'exécute la boucle qu'une seule fois
           for($i=$apartir; $i<$jusqua; $i++)   
           {   
              $NouvelleChaine .= " "."$ChaineTab[$i]";   
        // $NouvelleChaine = " "."$ChaineTab[0]";
        // $NouvelleChaine = " "."/w";
        // $NouvelleChaine = " /w";
           } 
           return $NouvelleChaine;   

        Tu rajoutes un espace avant le premier mot !
        => $func n'est pas égal à "/w" mais à " /w"
        0
    2. Oui Merci ça fonctionne, je me viens juste de me rendre compte du ""."$ChaineTab[i]"
      Merci Beaucoup :)

      Résolu.
      1