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 :

Condition IF dans une function [PHP 7]


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    recherche d'emploi
    Inscrit en
    Avril 2022
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : recherche d'emploi

    Informations forums :
    Inscription : Avril 2022
    Messages : 88
    Points : 48
    Points
    48
    Par défaut Condition IF dans une function
    Bonjour,
    J'ai cette function qui fonctionne très bien quand ma chainre de balise est ainsi.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [ADC_START][SDP]1[GUICHET]2[DEM]3[USER_CMDB_DIF_NON]4[[DEM_PDT_PCF < ASSET_XXX> < TPX_1>]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?PHP
    function precedent()
    {
        echo 'function';
        // global $reste;
        // $_SESSION['Balises2'] = $GLOBALS[$_SESSION['Balises2']];
        $d = $_SESSION['Balises2'] ;
    $regex = "/(.*)[0-9]+\\[.*\\]/";
    preg_match($regex, $d, $resultats);
    $_SESSION['Balises2'] = $resultats[1];
    // $reste contient la chaine sans le dernier morceau
    echo $resultats[1];
     
    }
    ?>
    Le souci est que parfois ma chaine de balises est comme ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [ADC_START][SDP]1[GUICHET]2[DEM]3[USER_CMDB_DIF_NON]4
    j'aimerai dire.
    si la chaine se termine bien par un crochet "[ADC_START][SDP]1[GUICHET]" alors appliquer la function.
    sinon (ne rein faire)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_SESSION['Balises2'] = $GLOBALS[$_SESSION['Balises2']];
    Je ne sais pas inclure des if dans une function.
    Merci.

  2. #2
    Membre du Club
    Homme Profil pro
    recherche d'emploi
    Inscrit en
    Avril 2022
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : recherche d'emploi

    Informations forums :
    Inscription : Avril 2022
    Messages : 88
    Points : 48
    Points
    48
    Par défaut
    bonjour,
    J'ai fait cette condition.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <?PHP
    function precedent()
    {
     
        //echo 'function';
        // global $reste;
        // $_SESSION['Balises2'] = $GLOBALS[$_SESSION['Balises2']];
        $d = $_SESSION['Balises2'] ;
        if (strpos($d, '[""]') !== false){
    $regex = "/(.*)[0-9]+\\[.*\\]/";
    preg_match($regex, $d, $resultats);
    $_SESSION['Balises2'] = $resultats[1];
    // $reste contient la chaine sans le dernier morceau
    echo $resultats[1].'function IF';
    }
     else{
    $_SESSION['Balises2'] = $d;
     echo $d.'funtion ElseIF';
     }
     
    }
    ?>
    Mais cela fait rentrer que dans le else.
    Merci

  3. #3
    Membre expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 785
    Points : 3 048
    Points
    3 048
    Par défaut
    Bonjour

    Relis https://www.php.net/manual/en/function.strpos.php.

    Tu as écris if (strpos($d, '[""]') !== false){ càd que tu souhaites entrer dans le if si (et seulement si) la variable $d contient exactement les quatre caractères [""] consécutifs. Est-ce vraiment ça ta demande ? Si ta variable contient ["blablabla"] tu comprendras que ce n'est pas [""] et donc qu'il n'entre pas dans le if.

  4. #4
    Membre du Club
    Homme Profil pro
    recherche d'emploi
    Inscrit en
    Avril 2022
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : recherche d'emploi

    Informations forums :
    Inscription : Avril 2022
    Messages : 88
    Points : 48
    Points
    48
    Par défaut
    Bonjour cavo789,
    Merci pour ton explication.
    J'ai trouvé cette solution.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <?php
     
    $d = '[ADC_START][SDP]1[GUICHET]2[DEM]3[USER_CMDB_DIF_NON]4[[DEM_PDT_PCF < ASSET_XXX> < TPX_1>]';
     
    // affiche le premier caractère de la chaine $d
    echo $d[0]; // [
     
    // affiche le deuxième caractère de la chaine $d
    echo $d[1]; // A
     
    // affiche le dernier caractère de la chaine $d
    echo $d[strlen($d) - 1]; // ]
     
    if ($d[strlen($d) - 1] === ']') {
      echo 'la chaine $d se termine par un crochet fermant';
    } else {
      echo 'la chaine $d ne se termine pas par un crochet fermant';
    }
    Merci.

    Je cherche des cours pour apprendre les tableaux en PHP.

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

Discussions similaires

  1. Type "groupe de controles" dans une function
    Par méphistopheles dans le forum VB 6 et antérieur
    Réponses: 15
    Dernier message: 20/06/2008, 21h07
  2. Mettre une condition if dans une requete sql
    Par Sardonnen dans le forum Oracle
    Réponses: 4
    Dernier message: 24/03/2006, 11h25
  3. Variables de Sessions crées dans une Function perdues
    Par vampiloup dans le forum Langage
    Réponses: 7
    Dernier message: 12/01/2006, 16h50
  4. Condition contenu dans une variable string
    Par tomo0013 dans le forum Access
    Réponses: 6
    Dernier message: 01/12/2005, 14h15
  5. tbitmap.free dans une function
    Par portu dans le forum Langage
    Réponses: 7
    Dernier message: 19/06/2003, 22h08

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