IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Probleme de string avec le or (||) [PHP 4]


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10
    Par défaut Probleme de string avec le or (||)
    Bonjour,

    j'ai un petit problème, mon string avec le or "||" ne fonctionne pas

    j'ai essayé ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $string = substr(strstr($input_id,$id_10), 10) || substr(strstr($input_id,$id_11), 10);
    puis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $string = (substr(strstr($input_id,$id_10), 10) || substr(strstr($input_id,$id_11), 10));
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $string = substr(strstr($input_id,$id_10), 10);
    $string = substr(strstr($input_id,$id_11), 10);
    mais rien à faire!

    Merci d'avance pour vos réponses.

    PS: Je débute!

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 44
    Par défaut
    Salut,

    En fait la solution est relativement simple. Dans ton code, la variable string ne contiendra pas la variable traitée (ce que j'imagine, tu veux récupérer) mais si l'une ou l'autre des condition (à savoir, l'un des deux substr(...)) a été validé. Elle contiendra donc un booléen.

    Pour récupérer le contenu, il faut passer par une p'tite condition. Tu peux utiliser la forme courte ou longue :

    Forme courte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    $string = substr(strstr($input_id,$id_10), 10) ? substr(strstr($input_id,$id_10), 10) : substr(strstr($input_id,$id_11), 10);
    ?>
    Forme longue :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    if(substr(strstr($input_id,$id_10), 10)) {
         $string = substr(strstr($input_id,$id_10), 10);
    } else {
         $string = substr(strstr($input_id,$id_11), 10);
    }
    ?>
    Ces deux codes impliquent que dans tous les cas, au moins une des deux fonctions retournera un résultat valide (si tu ne veux pas que $string puisse contenir autre chose qu'une chaine).

    Voila, cela devrait fonctionner !

    Nicolas .

  3. #3
    Membre émérite Avatar de sharrascript
    Homme Profil pro
    Développeur Web indépendant
    Inscrit en
    Avril 2007
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web indépendant

    Informations forums :
    Inscription : Avril 2007
    Messages : 678
    Par défaut
    Bonjour,

    Tu souhaite faire quoi ??

    si c'est une concaténation, c'est cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $string = substr(strstr($input_id,$id_10), 10);
    $string .= substr(strstr($input_id,$id_11), 10);
    si c'est un travail sur la même chaine, c'est cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $string = substr(strstr($input_id,$id_10), 10);
    $string = substr(strstr($string,$id_11), 10);
    Je ne sais pas si c'est cela que tu cherche à faire^^

    EDIT : J'ai été devancé et on voit l'importance d'expliquer ce que l'on souhaite faire, vu que je n'ai pas compris la même chose que Nicolas N.

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 44
    Par défaut
    Ah oui en effet ! Nous n'avons pas compris la même chose !

    J'ai interprété le "or" comme étant soit l'une des fonction, soit l'autre qui devait être exécutée (si la première n'est pas validée, on passe à la deuxième).

    Nicolas N .

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10
    Par défaut
    Merci Nicolas N. et sharrascript pour votre aide, j'ai résolu mon problème avec le ? et : comme Nicolas a expliqué, par contre j aurais aimé que tu m explique ce que veut dire le ? et : pour que je me couche moins bête.

    Et encore merci à vous deux.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10
    Par défaut
    Désolé je viens de comprendre le if est ? et le elso est : si je ne dis pas de bêtes.

  7. #7
    Membre averti
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 44
    Par défaut
    Salut,

    En effet, c'est à peu près ca. Disons qu'on peut résumer la syntaxe par :

    $variable = condition ? si oui : si non;

    Nicolas .

  8. #8
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par Nicolas N. Voir le message
    Salut,

    En effet, c'est à peu près ca. Disons qu'on peut résumer la syntaxe par :
    $variable = condition ? si oui : si non;

    Il y en as qui ont l'art de tout expliquer simplement , mais efficacement

    J'adores

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10
    Par défaut
    Oui en effet il explique clairement, encore merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme de pointeur avec une string
    Par Tarmineldur dans le forum C++
    Réponses: 6
    Dernier message: 07/02/2014, 08h15
  2. Probleme de string vers char* avec Sqlite
    Par nicolas_vp dans le forum C++
    Réponses: 3
    Dernier message: 28/11/2012, 19h27
  3. probleme d'affichage avec les string d'1 liste chainee
    Par ghyslain dans le forum Débuter
    Réponses: 5
    Dernier message: 29/09/2009, 11h15
  4. Probleme encodage String (pchar) avec une dll
    Par yupa dans le forum Débuter
    Réponses: 8
    Dernier message: 11/05/2009, 18h00
  5. probleme de cast avec String
    Par Asmod_D dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 20/07/2007, 01h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo