Opérations, fonctions et dates en php

Transcription

Opérations, fonctions et dates en php
Programmation orientée serveur :
Opérations, fonctions et dates en php :
Les opérations :
Opérateurs arithmétique :
Opérateur :
Description :
Exemple :
+
Addition
x=1; x+1;
Soustraction
x=1; x-1;
*
Multiplication
x=2; x*2;
/
Division
x=2; x/2;
%
Reste d’une division
x=5; 5%2;
++
Incrémentation (de 1) x=1; x++;
-Décrémentation (de 1) x=1; x--;
Opérateurs d’affectations :
Opérateur :
Exemple :
=
x=y;
+=
x+=y;
-=
x-=y;
*=
x*=y;
/=
x/=y;
.=
x.=y;
%=
x%=y;
Opérateurs de comparaison :
Opérateur :
Description :
==
Est égal à
!=
Est différent de (valable pour « tout »)
<>
Est différent de (chiffre uniquement)
<
Est plus petit que
>
Est plus grand que
<=
Est plus petit ou égal que
>=
Est plus grand ou égal que
Opérateurs logiques :
Opérateur :
Description :
&&
Et
Résultat :
2
0
4
1
1
2
0
Revient à :
x=y;
x=x+y;
x=x-y;
x=x*y;
x=x/y;
x=x.y;
x=x%y;
Exemple :
(1==2) Return false
(1!=2) Return true
(1<>2) Return true
(1<2) Return true
(1>2) Return false
(1<=2) Return true
(1>=2) Return false
Exemple :
x=1; y=3;
(x<4 && y>2) True
||
Ou
x=1; y=3;
(x=4 || y>2) True
!
Non
x=1; y=3;
!(x!=y)
False
Les structures conditionnelles (if – else, for, while, do, switch) sont présentes en php et
s’utilisent comme en C.
Les fonctions :
Il existe de très nombreuses fonctions php (cf cours n°2), cependant il est tout de même
possible de créer sa propre fonction. Une fonction définie de la sorte, cf ci-dessous, peut être
appelée n’importe où dans la page (même si elle n’est pas déclarée dans le même block php).
function nomFonction($argumentSiNécessaire) {
code à exécuter;
}
Voici quelques exemples fonctionnels réalisé en TD :
$v1="Il y a cinq mots";
$v2="J'ai pensé à mettre
six mots";
Fonction sans retour :
function compterMots($arg1) {
$nbt=strlen($arg1);
$nbm=0;
if($arg1[0]!=' ')
$nbm=$nbm+1;
for($i=0 ; $i<=$nbt ; $i++) {
$carac=$arg1[$i];
$caracsuiv=$arg1[$i+1];
if ($carac==' ' && $caracsuiv!=' ')
$nbm=$nbm+1;
}
echo $arg1 . " : " . $nbm .
" mots</br>";
}
Deux espaces
Résultat :
compterMots($v2);
J'ai pensé à mettre six mots : 6 mots
Fonction avec retour :
function nombreMots($arg1) {
$nbt=strlen($arg1);
$nbm=0;
if($arg1[0]!=' ')
$nbm=$nbm+1;
for($i=0 ; $i<=$nbt ; $i++) {
$carac=$arg1[$i];
$caracsuiv=$arg1[$i+1];
if ($carac==' ' && $caracsuiv!=' ')
$nbm=$nbm+1;
}
return $nbm;
}
$nbm=nombreMots($v2);
echo $nbm;
Retourne le nombre de mots (stocké dans $nbm)
Résultat :
6
Fonction utilisant une autre fonction personnalisée :
function inverserPhrase($arg1) {
$nbt=strlen($arg1);
$nbm=nombreMots($arg1);
$nbmr=$nbm;
$y=0;
for($i=0 ; $i<=$nbt ; $i++) {
$carac=$arg1[$i];
$caracsuiv=$arg1[$i+1];
if ($carac==' ' && $caracsuiv!=' ') {
$array[$nbmr]=substr($arg1, $y,
$i-$y);
$nbmr=$nbmr-1;
$y=$i+1;
}
if ($carac==$arg1[$nbt]){
$array[$nbmr]=substr($arg1, $y,
$i-$y);
}
}
echo $arg1 . " : ";
for ($t=0;$t<=$nbm;$t++) {
echo $array[$t] . " ";
}
}
inverserPhrase($v1);
echo "</br>";
inverserPhrase($v2);
Appelle la fonction prédéfinie « strlen »
Appelle la fonction créée dans le même fichier .php
Appelle la fonction prédéfinie « substr »
Résultat :
Il y a cinq mots : mots cinq a y Il
J'ai pensé à mettre six mots : mots six mettre à pensé J'ai
Fonction utilisant un do et la fonction rand(=random) :
function genererMdp($arg1) {
$compteur=0;
$chiffre=0;
$caractere=0;
$mdp = "";
$uneArray = str_split($arg1);
do{
$pileFace = rand(0,1);
if ($chiffre<4 && $caractere<4){
if ($pileFace == 0){
$unrand1 = rand(0,strlen($arg1));
$mdp = $mdp . $uneArray[$unrand1];
$caractere++;
}else{
$unrand2 = rand(0,9);
$mdp = $mdp . $unrand2;
$chiffre++;
}
}else{
if($chiffre=4){
$unrand1 = rand(0,strlen($arg1));
$mdp = $mdp . $uneArray[$unrand1];
$caractere++;
}else{
if($caractere=4){
$unrand2 = rand(0,9);
$mdp = $mdp . $unrand2;
$chiffre++;
}
}
}
$compteur ++;
}while($compteur<8);
for($i=0 ; $i<8 ; $i++){
while($mdp[$i]==' ') {
$mdp[$i]=$uneArray[$unrand1];
}
}
return $mdp;
}
echo $v1 . " | mot de passe : " . genererMdp($v1) .
"</br>";
echo $v2 . " | mot de passe : " . genererMdp($v2);
Début du do, contrairement au
while le do fait minimum un tour
de la boucle (la condition se rentre
à la fin cf « ← condition »)
Retourne un entier aléatoire entre 0
et 9.
← condition
Résultat :
Il y a cinq mots | mot de passe :
t6443tlt
J'ai pensé à mettre six mots | mot de
passe : 9eee21rr
Les dates :
echo "le jour d'aujourd’hui est le " . date("d m Y")
. "<br>";
le jour d'aujourd’hui est le 10 10 2015
echo "il est " . date(G) . "h". date(i) . "min<br>";
il est 14h57min
La fonction « mktime » : Retourne le timestamp UNIX d'une date
 Syntaxe :
int mktime ([ int $hour = date("H") [, int $minute = date("i") [, int $second = date("s") [, int $month
= date("n") [, int $day = date("j") [, int $year = date("Y") [, int $is_dst = -1 ]]]]]]] )

Exemple :
echo mktime(date("H") ,date("i") , date("s") , date("n") , date("j") , date("Y") , -1 );
Résultat :
1444481879