 |
Super-Logiciels pour vous |
 |
 |
Al Tana9olat Solution complète de la gestion des gares:
Quitances, voyages, loyers, ... | | | |
Al Fondoki Logiciel de la gestion
hôteliere:
Réservations, main courante, poits de vente, dépôts, occupation des chambres, ... | | | |
Al Morakib Logiciel de serveillance par
camera et par internet ... | | | |
Al Hassib Comptabilité générale, Liasse comptable marocaine ... | | | |
Plus |
|
Avenue des F.A.R. Rsidence Niama N6 - Ttouan (Maroc)
Tl :(+212) 8 90 60 52 25
Fax :(+212) 5 39 97 25 15
Mobile :(+212) 6 61 10 74 37
Email :mce@meta-computer.com
|
|
|
Acceuil php, js(1200) Fonctions internes de PHP
|
Fonctions internes de PHP |
2012-09-26 |
Fonctions internes de PHP
PHP dispose de nombreuses fonctions et structures standards. Il y a aussi des fonctions qui requièrent des extensions spécifiques de PHP, sans lesquelles vous obtiendrez l'erreur fatale "undefined function". Et il y a des fonctions de base qui sont incluses dans toutes les versions de PHP, telles que les fonctions de chaînes de caractères et les fonctions de variables. Cependant, on peut trouver parfois une fonction qui existe seulement dans les versions récentes de PHP. Heureusement, il existe une méthode pour savoir est ce qu'une fonction existe sur notre serveur PHP ou non !
Est-ce que cette fonction existe ?
On a besoin parfois de vérifier si une fonction existe avant de l'utiliser. Alors, on utilise la fonction function_exists()
- Exemple :
La fonction str_replace() sert à remplacer toutes les occurrences d'une chaîne dans un texte par une autre chaîne. Mais cette fonction est sensible à la casse.http://localhost/Projet1/str_replace.php
$notre_chaine = " Le feu rouge est coloré du ROUGE, ça veut dire que c'est rouge !";
$remplacer = str_replace("rouge", "vert", $notre_chaine);
echo $remplacer; // Le feu vert est coloré du ROUGE, ça veut dire que c'est vert !
?>
La 2ème occurrence n'a pas été remplacée parce qu'elle est en majuscule "ROUGE".
Il existe une version insensible à la casse de str_replace(), c'est str_ireplace(). Alors on peut modifier notre code de cette manière : $remplacer = str_ireplace("rouge", "vert", $notre_chaine);
Mais le problème c'est que cette fonction a été ajoutée en PHP5, alors notre script ne marchera pas dans les anciens serveurs qui utilisent encore le PHP4. La solution ici est d'utiliser function_exists() :http://localhost/Projet1/str_ireplace.php
$notre_chaine = " Le feu rouge est coloré du ROUGE, ça veut dire que c'est rouge !";
if (function_exists("str_ireplace"))
$remplacer = str_ireplace("rouge", "vert", $notre_chaine); //PHP5
else
$remplacer = str_ireplace("rouge", "vert", $notre_chaine); //Anciennes versions de PHP
echo $remplacer; //Le feu vert est coloré du vert, ça veut dire que c'est vert !
?>
Remarque : la fonction function_exists() ne fonctionne pas pour les instructions (les structures de langage) comme : die(), echo(), empty(), exit(), eval(), include(), include_once(), isset(), list(), print(), require(), require_once() et unset().
Inclusion des fichiers
Dans les sites statiques réalisés en HTML, on doit recopier plus de 50% du contenu dans toutes les pages du site, afin d'avoir le même affichage dans toutes les pages du site (l'entête, le menu vertical et horizontal du site, le pied de page…).
Heureusement, en PHP, on n'a pas besoin de faire ça, on peut facilement écrire les parties qui se répètent dans des fichiers à part et les inclure dans nos pages en utilisant la fonction include() ou require() :
include("page1.php");
require("page1.php");
Ces deux fonctions incluent la page "page1.php" dans le script courant, et sont identiques à une différence près : include() ne renvoie qu'un avertissement si le fichier inclus est introuvable, tandis que require() renvoie une erreur fatale et interrompe tout le script.
Avant d'inclure un fichier, on peut tester si ce fichier existe, par la fonction file_exists();http://localhost/Projet1/file_exists.php
if (file_exists("../scripts/mon_fichier.php")){
include ("../scripts/mon_fichier.php");
}
?>
Remarque : La notation (../) est utilisée pour se déplacer du dossier courant vers le dossier parent.
Il existe aussi deux fonctions include_once() et require_once() qui obligent PHP à vérifier si le script demandé a déjà été inclus dans la page courante, et si le code a déjà été inclus, il ne le sera pas une seconde fois. C'est très pratique pour les fichiers qui contiennent les déclarations de fonctions et de classes.
include_once("page1.php");
require_once("page1.php");
- Exemple complet d'un site avec un contenu organisé par include() :http://localhost/Projet1/include/index.php
//**********************
echo " L'en-tête : ";
include ("en_tete.php");
//**********************
echo " Le menu : ";
include ("menu.php");
//**********************
echo " Le contenu : ";
if (isset($_GET['page'])){
$page = $_GET['page'];
} else $page = "";
switch($page) {
case "page1" : include ("page1.php"); break;
case "page2" : include ("page2.php"); break;
case "page3" : include ("page3.php"); break;
default: include ("page_accueil.php");
}
//**********************
echo " Le pied de page : ";
include ("pied_page.php");
?>
http://localhost/Projet1/include/en_tete.php
Bienvenue sur mon site web !
http://localhost/Projet1/include/menu.php
Accueil -
Page1 -
Page2 -
Page3
http://localhost/Projet1/include/page_accueil.php
Contenu de la page d'accueil
http://localhost/Projet1/include/page1.php
Contenu de la page 1
http://localhost/Projet1/include/page2.php
Contenu de la page 2
http://localhost/Projet1/include/page3.php
Contenu de la page 3
http://localhost/Projet1/include/pied_page.php
copyright mon site 2012
Vous pouvez télécharger l'exemple complet sur l'utilisation de la fonction include() à partir d'ici : include.zip
|
Commentaires des visiteurs : |
|
|
|
|
|