Cours dev back session 3 : rappels opérateurs
retour aux rapppels sur les variables
opérateurs arithmétiques
devision de b par a (3/2) = ";
print($b / $a);
echo "
module de b par a = reste de la division de b/a (3/2) = ";
print($b % $a);
// pour changer le signe d'une valeur l'opérateur unaire :
echo "
a en négatif = ";
print(-$a);
?>
opérateur concatenation . et sur les chaines
Permet de coller entre elles des chaines ou des chaines à autre chose.
Bonjour "
."tout le monde ! a vaut "
. $a
. " aujorud'hui";
?>
Petit apparté sur les séparateur de chaines : " et '
ma mariable $a vaut '.$a;
// ici $a est "interprêté"
echo "
ma mariable $a vaut ".$a;
// on "echappe" $ si on veut qu'il s'affiche entre doule quotte
echo "
ma mariable \$a vaut ".$a;
// ou sans concaténation
echo "
ma mariable \$a vaut $a";
echo "
en français on beaucoup d'apostrophe donc j'utilise \" \" ";
echo "
si je veux un 'antislash' je le préfixe par un \\ ";
echo '
en SQL on beaucoup de guillements donc j\'utilise \' \' ';
?>
opérateurs de comparaisons / opérateurs logiques
==, !=, >=, <= , >, < ... pour les comparaisons simples (sans vérfication de type)
===, !== pour les comparaisons avancées (avecx vérfication de type)
! opérateur unaire pour inversion de valeur vrai => faux, faux => vrai
";
$a = true;
var_dump($a);
echo "
";
$b = !$a;
var_dump($b);
?>
pour le chainage de conditions on utilise && pour "et", || pour "ou"
le caractère | s'appelle "pipe" en anglais et peut s'obtenir avec <Alt Gr>+6 sur un clavier pc, et <Alt + Shift> + L sous mac
a = 2";
$a=2;
$vrai = ( ($a > 1) && ($a < 6) );
echo " ( ($a > 1) && ($a < 6) ) est : ";
var_dump($vrai);
// deux comparaisons avec et
echo "
a = 2";
$a=-2;
$vrai = ( $a > 1 || $a < -1 );
echo " ( $a > 1 || $a < -1 ) est : ";
var_dump($vrai);
?>
priorité des opérateurs
Comme en mathématique les opérateurs ont une précédence (priority) cf :
référence
opérateur ternaire le mini if then else
Deux solutions pour réaliser le pseudo code suivant
variable a, b : entiers
a=2;
b=0;
Si a est supérieur à 1 alors
b = a*a;
Sinon
b = -a;
Fin si
1)
{
$b = $a*$a;
}
else
{
$b = -$a;
}
echo "
à l'issue de l'exécutoin du premier b vaut ".$b;
$a = 2;
$b = ( $a>1 ? $a*$a : -$a );
echo "
à l'issue de l'exécutoin du premier b vaut ".$b;
?>
L'opérateur ternaire ?: pertmet de faire une affactation conditionnelle qui vaut :
- ce qui est avant le ":" si la condition avant le "?"" est vraie,
- ce qui est après le ":" si la condition avant le "?"" est fausse