Les Bases du PHP
Préambule
Le PHP est un langage interprété (un langage de script) exécuté du côté serveur et non du côté client (comme le Javascript...). La syntaxe du langage provient de celles du langage C, du Perl et de Java et il intègre une simplicité d'interfaçage avec des bases de données (de nombreux SGBD sont supportés, mais le plus utilisé avec ce langage est MySQL, un SGBD gratuit disponible sur de nombreuses plateformes : Unix, Linux, Windows, MacOs X, Solaris, etc...)
Histoire
Le langage PHP a été mis au point au début d'automne 1994 par Rasmus Lerdorf. Ce langage de script lui permettait de conserver la trace des utilisateurs venant consulter son CV sur son site, grâce à l'accès à une base de données par l'intermédiaire de requêtes SQL. Ainsi, étant donné que de nombreux internautes lui demandèrent ce programme, Rasmus Lerdorf mit en ligne en 1995 la première version de ce programme qu'il baptisa Personal Sommaire Page Tools, puis PersonalHome Page v1.0 (traduisez page personnelle version 1.0).
Etant donné le succès de PHP 1.0, Rasmus Lerdorf décida d'améliorer ce langage en y intégrant des structures plus avancées telles que des boucles, des structures conditionnelles, et y intégra un package permettant d'interpréter les formulaires qu'il avait développé (FI, Form Interpreter) ainsi que le support de mSQL. C'est de cette façon que la version 2 du langage, baptisée pour l'occasion PHP/FI version 2, vit le jour durant l'été 1995. Il fut rapidement utilisé sur de nombreux sites (15000 fin 1996, puis 50000 en milieu d'année 1997).
A partir de 1997, Zeev Suraski et Andi Gurmans rejoignirent Rasmus pour former une équipe de programmeurs afin de mettre au point PHP 3 (Stig Bakken, Shane Caraveo et Jim Winstead les rejoignirent par la suite). C'est ainsi que la version 3.0 de PHP fut disponible le 6 juin 1998.
A la fin de l'année 1999 la version 4.0 de PHP, baptisée PHP4, est apparue. PHP en est aujourd'hui à sa cinquième version.
La syntaxe du PHP
Les balises d'ouverture/fermeture
Ca, c'est LA base du PHP. Si vous savez pas ça, ba... vous êtes bon pour allez élever des chèvres.
Lorsque vous incluez du code PHP dans un script vous devez indiquer que cette partie à interpréter est dans ce langage comme si vous incluez du javascript par exemple. Plusieurs balises sont utilisables pour indiquer le début et la fin de la partie en langage PHP.
Vous pouvez utiliser l'une des deux suivantes :
PHP:
<?php
codes php ...
?>
Code:
<?
codes php ...
?>
Les opérateurs
La, c'est comme à l'école, c'est tout du par coeur... (en même temps si vous avez un peut de logique, sa devrais pas être trop dur... )
+ | Opérateur d'Addition | Ajoute 2 valeurs
- | Opérateur de Soustraction | Soustrait deux valeurs
* | Opérateur de multiplication | Multiplie deux valeurs
/ | Opérateur de division | Divise deux valeurs
= | Opérateur d'affectation | Affecte une valeur à une variable
% | Opérateur modulo | Donne le reste de la division entière entre 2 nombres
+= | Additionne deux valeurs et stocke le résultat dans la variable (à gauche)
-= | Soustrait deux valeurs et stocke le résultat dans la variable
*= | Multiplie deux valeurs et stocke le résultat dans la variable
/= | Divise deux valeurs et stocke le résultat dans la variable
%= | Donne le reste de la division deux valeurs et stocke le résultat dans la variable
|= | Effectue un OU logique entre deux valeurs et stocke le résultat dans la variable
^= | Effectue un OU exclusif entre deux valeurs et stocke le résultat dans la variable
&= | Effectue un Et logique entre deux valeurs et stocke le résultat dans la variable
.= | Concatène deux chaînes et stocke le résultat dans la variable
++ | Incrémentation | Augmente d'une unité la variable | $x++
-- | Décrémentation | Diminue d'une unité la variable | $x--
== | Opérateur d'égalité | Compare deux valeurs et vérifie leur égalité
< | Opérateur d'infériorité stricte | Vérifie qu'une variable est strictement inférieure à une valeur
<= | Opérateur d'infériorité | Vérifie qu'une variable est inférieure ou égale à une valeur
> | Opérateur de supériorité stricte | Vérifie qu'une variable est strictement supérieure à une valeur
>= | Opérateur de supériorité | Vérifie qu'une variable est supérieure ou égale à une valeur
!= | Opérateur de différence | Vérifie qu'une variable est différente d'une valeur
|| ou OR | OU logique | Vérifie qu'une des conditions est réalisée | ((condition1)||(condition2))
&& ou AND | ET logique | Vérifie que toutes les conditions sont réalisées | ((condition1)&&(condition2))
XOR | OU exclusif | Vérifie qu'une et une seule des conditions est réalisée | ((condition1)XOR(condition2))
! | NON logique | Inverse l'état d'une variable booléenne (retourne la valeur 1 si la variable vaut 0, 0 si elle vaut 1) | (!condition)
. | Concaténation | Joint deux chaînes bout à bout | "Bonjour"."Au revoir" => "BonjourAu revoir"
$ | Référencement de variable | Permet de définir une variable | $MaVariable = 2;
-> | Propriété d'un objet | Permet d'accéder aux données membres d'une classe | $MonObjet->Propriete
Les Variables
En PHP, les variables sont représentées par un signe dollar "$" suivi du nom de la variable. Le nom est sensible à la casse.
Attention:
Un nom de variable valide doit commencer par une lettre ou un souligné (_), suivi de lettres, chiffres ou soulignés.
$this est une variable spéciale, qui ne peut pas être assignée.
Exemple:
PHP:
$var = 'FM|T';
$Var = 'ZoRo';
echo "$var, $Var";
Affiche: "FM|T ZoRo"
Variable spéciale:
Une constante est une variable dont la valeur est inchangeable lors de l'exécution d'un programme. Avec PHP, les constantes sont définies grâce à la fonction define(). la syntaxe de la fonction define() est la suivante :
PHP:
define("NOM_DE_LA_VARIABLE", "FM|T ZoRo");
echo NOM_DE_LA_VARIABLE; // Affiche "FM|T ZoRo"
Les Conditions
L'instruction if
La, ouvrez grand vos oreilles, car ont rentrent dans la partie "complexe" des bases du PHP. Donc accrochez vous bien...
L'instruction if est la structure de test la plus basique, on la retrouve dans tous les langages (avec une syntaxe différente...). Elle permet d'exécuter une série d'instruction si jamais une condition est réalisée.
La syntaxe de cette expression est la suivante :
PHP:
if (condition réalisée) {
liste d'instructions
}
L'instruction suivante teste si les deux conditions sont vraies :
PHP:
if ((condition1)&&(condition2))
L'instruction ci-dessous exécutera les instructions si l'une ou l'autre des deux conditions est vraie :
PHP:
if ((condition1)||(condition2))
L'instruction if ... else
L'instruction if dans sa forme basique ne permet de tester qu'une condition, or la plupart du temps on aimerait pouvoir choisir les instructions à exécuter en cas de non réalisation de la condition...
L'expression if ... else permet d'exécuter une autre série d'instruction en cas de non-réalisation de la condition.
La syntaxe de cette expression est la suivante :
PHP:
if (condition réalisée) {
liste d'instructions
}
else {
autre série d'instructions
}
L'instruction if ... elseif ... else
L'instruction if ... else ne permet de tester qu'une condition, or il est parfois nécessaire de tester plusieurs conditions de façon exclusive, c'est-à-dire que sur toutes les conditions une seule sera réalisée ...
L'expression if ... elseif ... else permet d'enchaîner une série d'instructions et évite d'avoir à imbriquer des instructions if.
La syntaxe de cette expression est la suivante :
PHP:
if (condition réalisée) {
liste d'instructions
}
elseif (autre condition réalisée) {
autre série d'instructions
}
...
else (dernière condition réalisée) {
série d'instructions
}
Il est possible de faire un test avec une structure beaucoup moins lourde grâce à la structure suivante, appelée opérateur ternaire :
PHP:
(condition) ? instruction si vrai : instruction si faux
L'instruction switch
L'instruction switch permet de faire plusieurs tests de valeurs sur le contenu d'une même variable. Ce branchement conditionnel simplifie beaucoup le test de plusieurs valeurs d'une variable, car cette opération aurait été compliquée (mais possible) avec des if imbriqués. Sa syntaxe est la suivante :
PHP:
switch (Variable) {
case Valeur1 :
Liste d'instructions
break;
case Valeur2 :
Liste d'instructions
break;
case Valeurs... :
Liste d'instructions
break;
default:
Liste d'instructions
break;
}
Fonctionnement:
Les parenthèses qui suivent le mot clé switch indiquent une expression dont la valeur est testée successivement par chacun des case. Lorsque l'expression testée est égale à une des valeurs suivant un case, la liste d'instructions qui suit celui-ci est exécutée. Le mot clé break indique la sortie de la structure conditionnelle. Le mot clé default précède la liste d'instructions qui sera exécutée si l'expression n'est jamais égale à une des valeurs.
Les Boucles
La boucle for
L'instruction for permet d'exécuter plusieurs fois la même série d'instructions: c'est une boucle!
Dans sa syntaxe, il suffit de préciser le nom de la variable qui sert de compteur (et éventuellement sa valeur de départ, la condition sur la variable pour laquelle la boucle s'arrête (basiquement une condition qui teste si la valeur du compteur dépasse une limite) et enfin une instruction qui incrémente (ou décrémente) le compteur.
La syntaxe de cette expression est la suivante :
PHP:
for (compteur; condition; modification du compteur) {
liste d'instructions
}
Par exemple :
PHP:
for ($i=1; $i<6; $i++) {
echo "$i
";
}
Cette boucle affiche 5 fois la valeur de $i, c'est-à-dire 1,2,3,4,5
Elle commence à $i=1, vérifie que $i est bien inférieur à 6, etc... jusqu'à atteindre la valeur $i=6, pour laquelle la condition ne sera plus réalisée, la boucle s'interrompra et le programme continuera son cours.
D'autre part, le langage PHP autorise la déclaration de la variable de boucle dans l'instruction for elle-même!
Par exemple :
PHP:
for ($i=0; $i<10; $i++) {
echo "$i
";
}
L'instruction while
L'instruction while représente un autre moyen d'exécuter plusieurs fois la même série d'instructions.
La syntaxe de cette expression est la suivante :
PHP:
while (condition réalisée) {
liste d'instructions
}
Cette instruction exécute la liste d'instructions tant que (while est un mot anglais qui signifie tant que) la condition est réalisée.
Les Fonctions
Bon, fini de rigoler la, nous allons attaquer une bonne partie très importante qui sont les fonctions, et vous allez vous en servir presque tout le temps, donc restez attentifs...

Une fonction est ce que l'on peut appeler un sous programme, une procédure.
On distingue deux types de fonctions :
- Les "fonctions intégrées" ou "built-in": Elles sont incluses par défaut avec les distributions de PHP, exemple: print, echo
- Les "fonctions utilisateur" : Elles sont définies par le développeur.
La déclaration d'une fonction:
PHP nécessite que l'on définisse une fonction avant que celle-ci puisse être utilisée, car pour l'appeler dans le corps du programme il faut que l'interpréteur la connaisse, c'est-à-dire qu'il connaisse son nom, ses arguments et les instructions qu'elle contient. La définition d'une fonction s'appelle "déclaration" et peut se faire n'importe où dans le code. La déclaration d'une fonction se fait grâce au mot-clé function, selon la syntaxe suivante :
PHP:
function Nom_De_La_Fonction(argument1, argument2, ...) {
liste d'instructions
}
Attention:
Les fonctions doivent suivre certaines règles pour qu'elles soient correct:
- Le nom doit commencer par une lettre.
- Un nom de fonction peut comporter des lettres, des chiffres et les caractères _ et & (les espaces ne sont pas autorisés!).
- Le nom de la fonction, comme celui des variables est sensible à la casse (différenciation entre les minuscules et majuscules).
- Les arguments sont facultatifs, mais s'il n'y a pas d'arguments, les parenthèses doivent rester présentes.
- Il ne faut pas oublier de refermer les accolades..
Appeler une fonction
Pour exécuter une fonction, il suffit de faire appel à elle en écrivant son nom (une fois de plus en respectant la casse) suivie d'une parenthèse ouverte (éventuellement des arguments) puis d'une parenthèse fermée :
PHP:
Nom_De_La_Fonction();
Information:
Si jamais vous avez défini des arguments dans la déclaration de la fonction, il faudra veiller à les inclure lors de l'appel de la fonction (le même nombre d'arguments séparés par des virgules!)
PHP:
Nom_De_La_Fonction(argument1, argument2);
Le renvoie de valeur par une fonction:
La fonction peut renvoyer une valeur (et donc se terminer) grâce au mot-clé return. Lorsque l'instruction return est rencontrée, la fonction évalue la valeur qui la suit, puis la renvoie au programme appelant (programme à partir duquel la fonction a été appelée).
Une fonction peut contenir plusieurs instructions return, ce sera toutefois la première instruction return rencontrée qui provoquera la fin de la fonction et le renvoi de la valeur qui la suit.
La syntaxe de l'instruction return est simple :
PHP:
return valeur_ou_variable;
L'argumentation d'une fonction:
Le passage d'arguments à une fonction se fait au moyen d'une liste d'arguments (séparés par des virgules) entre parenthèses suivant immédiatement le nom de la fonction. Les arguments peuvent être de simple variables, mais aussi des tableaux ou des objets. A noter qu'il est possible de donner une valeur par défaut à ces arguments en faisant suivre le nom de la variable par le signe "=" puis la valeur que l'on affecte par défaut à la variable.
Lorsque vous voulez utiliser un argument dans le corps de la fonction en tant que variable, celui-ci doit être précédé par le signe $.
PHP:
function dire_texte($qui, $texte = 'Bonjour')
{
if(empty($qui)){ // Si $qui est vide, on retourne faux
return false;
}else{
echo "$texte $qui"; // On affiche le texte
return true; // Fonction exécutée avec succès
}
}
Ainsi cette fonction peut être appelée de deux façons différentes :
PHP:
// Passage des deux paramètres
dire_texte("cher phpeur", "Bienvenue"); // Affiche "Bienvenue cher phpeur"
// Utilisation de la valeur par défaut du deuxième paramètre
dire_texte("cher phpeur"); // Affiche "Bonjour cher phpeur"
Utiliser une fonction d'un autre fichier PHP:
Pour une question d'organisation, la plus part des développeurs utilisent des fichiers où ils déclarent toute leurs fonctions dedans, et après, inclus le fichier dans le fichier dans lequel ils veulent utiliser la fonction.
Exemple: (on inclus le fichier "fonctions.php" qui contient la fonction "FrenchModdingTeam()")
PHP:
include ("fonctions.php");
FrenchModdingTeam($ZoRo);
Note: N'oubliez surtout pas d'inclure le fichier, sinon, si vous utilisez la fonction sans avoir inclus le fichier avant, sa vous retourneras un "Unknown Function" => Fonction Inconnu ..
Les logiciels
Et oui c'est bien beau d'apprendre le PHP, mais si on a pas de logiciel pour écrire le code sa va moins bien aller...

Il existe une multitude de logiciel de programmation web, certain sont dit "WYSIWYG" (What You See It's What You Get) ils permettent de voir en temps réel le code qu'on écris comme Dreamweaver de chez Adobe par exemple. Néanmoins, ces logiciels sont très lourds et demande beaucoup de ressource sur l'ordinateur.
Etant développeur web depuis 2ans, j'ai eu l'occasion de tester pas mal de logiciel, et celui que j'ai retenus est:
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
Pourquoi celui-ci est pas un autre ?
La raison est simple.
C'est le seul logiciel que j'ai trouvé qui fait la:
Correction Syntaxique (Du PHP, HTML/CSS, Ruby & Rails, JavaScript, Python)Et je peut vous dire que ceci est fort pratique quand on as un fichier de 2k/3k lignes voir plus et qu'on à oublié un ";" par exemple, ou une balise d'ouverture/fermeture PHP...

Néanmoins ceci à ces limites bien sûr, et ne vous corrigeras pas si vous vous trompé de nom dans l'utilisation d'une variable par exemple.
Liste de logiciel:
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
(Windows, Linux)
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
(Windows)
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
(Windows, MAC, Linux)
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
(Windows)
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
(Mac)
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
(Mac)Tutoriel entièrement réalisé par mes soins.
Pour toutes questions, informations à propos de se tutoriel, merci de le faire en répondant à ce sujet et non par MP.
Tutoriel sur : Les bases de la PDOStatement