Trouver la position de 2 variables dans array

WRInaute occasionnel
Salut,

Comment résoudre cela :

$mot_1 = "toi";
$mot_2 = "moi";
$tableau = array('lui','moi','nous','vous','toi','je','il');

Je compare mes 2 variables $mot_1 et $mot_2 et je souhaite savoir si la variable $mot_1 se situe avant ou après dans mon tableau array. Je sais pas si je suis bien clair 8O

Autrement dit dans mon exemple la variable $mot_1 (toi) se situe après la variable $mot_2 (moi) dans mon tableau array, comment faire pour savoir cela ?

Punaise des fois on se prend la tête grave !

Merci pour votre aide.
 
WRInaute accro
Code:
<?php 
$mot_1 = "toi";
$mot_2 = "moi";
$tableau = array('lui','moi','nous','vous','toi','je','il');

$key_1 = array_search($mot_1, $tableau);
$key_2 = array_search($mot_2, $tableau);
if($key_1 < $key_2){
echo $mot_1.' se situe avant '.$mot_2;
}
else{
echo $mot_1.' se situe après '.$mot_2;
}
?>
 
WRInaute impliqué
Il faudrait aussi vérifier que les deux mots sont trouvés.

Code:
<?php
$mot_1 = "toi";
$mot_2 = "moi";
$tableau = array('lui','moi','nous','vous','toi','je','il');

$key_1 = array_search($mot_1, $tableau);
$key_2 = array_search($mot_2, $tableau);
if ($key_1 === false || $key_2 === false) {
    if ($key_1 === false) {
        echo 'Seul le premier mot a été trouvé';
    } elseif ($key_2 === false) {
        echo 'Seul le second mot a été trouvé';
    } else {
        echo 'Aucun des deux mots trouvé.';
    }
} elseif ($key_1 < $key_2){
    echo $mot_1.' se situe avant '.$mot_2;
} else {
    echo $mot_1.' se situe après '.$mot_2;
}
?>

Après, c'est du détail. Si tu es sur de la présence des deux mots dans le tableau, alors c'est inutile d'ajouter cette vérification.
 
WRInaute occasionnel
ah les 2 deux bout de code fonctionnent parfaitement, c'est dans ces moment là que je me dit que je suis nul en php :oops:

En tout les cas merci pour votre aide, c'était un petit bout de code mais qui me sera d'une grande utilité, comme quoi....
 
Discussions similaires
Haut