"Ciseaux",
        "Ciseaux" => "Papier",
        "Papier"  => "Pierre" ];
    // Conversion du choix du joueur humain en une valeur sous forme de chaîne de caractère
    const VAL_CHOIX = [
        "1" => "Pierre",
        "2" => "Ciseaux",
        "3" => "Papier" ];
    // endregion DefConst
    // region DefVars : définition des variables
    // Le tableau $Joueurs stocke les informations sur les 2 joueurs
    ( array ) $Joueurs     = [
            ];
    // Le tableau $InfosJoueur stocke les données d'un seul joueur et est utilisé pour remplir $Joueurs
    ( array ) $InfosJoueur = [
        "Nom"    => "",
        "Points" => 0 ];
    // endregion DefVars
    // Saisie du nom du joueur tant que la réponse est vide
    while (!$InfosJoueur["Nom"]):  // Pour PHP, la chaîne vide "" est équivalente à FALSE
        // Prompt
        print('Nom du joueur ? ');
        // Récupération de la réponse. Notez que la fonction PHP readline() ne fonctionne pas sous Windows.
        $InfosJoueur["Nom"] = trim(fgets(STDIN));
    endwhile;
    // Valider la saisie de la réponse en l'affichant dans un message de bienvenue.
    printf('Bonjour, %s.' . PHP_EOL, $InfosJoueur["Nom"]);
    // Ajout des infos sur le joueur : son nom et son score de départ
    $Joueurs[]          = $InfosJoueur;
    // Le 2ème joueur est joué par l'ordinateur et s'appelle "Ordinateur"
    $InfosJoueur["Nom"] = "Ordinateur";
    $Joueurs[]          = $InfosJoueur;
    // Début de la partie en 3 manches gagnantes
    while ($Joueurs[0]["Points"] < 3 && $Joueurs[1]["Points"] < 3) :
        // Annonce de la nouvelle manche
        print('Nouvelle manche !' . PHP_EOL);
    //    echo PHP_EOL;
        // Rappel des scores de chaque joueur
        printf(
            'Rappel des scores : %s %d point(s). Ordinateur %d point(s).' . PHP_EOL,
            $Joueurs[0]["Nom"],
            $Joueurs[0]["Points"],
            $Joueurs[1]["Points"]
        );
        // Initialisation du choix du joueur à une valeur hors limite
        ( int ) $ChoixJoueur = 0;
        // Saisie du choix du Joueur humain
        while ($ChoixJoueur < 1 || $ChoixJoueur > 3):
            // Prompt
            print('Que jouez-vous [Répondre 1, 2 ou 3] ? (1 = ' . VAL_CHOIX["1"] . ', 2 = ' . VAL_CHOIX["2"] . ', 3 = ' . VAL_CHOIX["3"] . ') ');
            // Récupération de la réponse. Notez que la fonction PHP readline() ne fonctionne pas sous Windows.
            $ChoixJoueur = intval(trim(fgets(STDIN)));
        endwhile;
        // Confirmation du choix du joueur en l'affichant en toute lettre
        printf('Vous avez choisi : %s', VAL_CHOIX[strval($ChoixJoueur)] . PHP_EOL);
        // Tirage aléatoire du choix du Joueur "Ordinateur"
        ( string ) $ChoixOrdinateur = VAL_CHOIX[array_rand(VAL_CHOIX)];
        // Confirmation du choix de l'ordinateur en l'affichant en toute lettre
        printf('L\'ordinateur a choisi : %s' . PHP_EOL, $ChoixOrdinateur);
        // Résolution de la manche
        if (VAL_CHOIX[strval($ChoixJoueur)] != $ChoixOrdinateur):
            if (CHI_FOU_MI[VAL_CHOIX[strval($ChoixJoueur)]] == $ChoixOrdinateur):
                // Le joueur huemain gagne la manche
                printf('%s gagne la manche !' . PHP_EOL, $Joueurs[0]["Nom"]);
                $Joueurs[0]["Points"]++;
            else:
                // L'ordinateur gagne la manche
                printf('L\'ordinateur gagne la manche !' . PHP_EOL);
                $Joueurs[1]["Points"]++;
            endif;
        else :
            printf('Match nul !' . PHP_EOL);
        endif;
    endwhile;
    // Afficher le résultat de la partie
    if (3 == $Joueurs[0]["Points"]):
        printf('%s gagne la partie !' . PHP_EOL, $Joueurs[0]["Nom"]);
    else:
        printf('L\'ordinateur gagne la partie !' . PHP_EOL);
    endif;