1. Il n’existe pas de variable statique globale en PHP.
Lorsque je faisais du développement .Net dans le passé, je pouvais utiliser la méthode suivante pour mettre en cache certaines données :
afficher la copie en clair dans le presse-papiers ?
Test de classe publique {
private static int Count = 0; //Cette variable est valide dans toute l'application.
}
Test de classe publique{
private static int Count = 0; //Cette variable est valide dans toute l'application.
}
PHP est un langage interprété Bien qu'il possède le modificateur static, sa signification est complètement différente de celle de .Net.
Même si une variable de la classe est déclarée statique, cette variable n'est valide que dans le domaine d'application actuel au niveau de la page.
2. Comprendre la portée des variables.
Les variables déclarées en dehors d'une méthode ne sont pas accessibles dans le corps de la méthode.
Tels que :
afficher la copie ordinaire dans le presse-papiers ?
<?php
$url = " www.webjx.com ";
fonction _DisplayUrl() {
écho $url;
}
fonction DisplayUrl() {
URL $ globale ;
écho $url;
}
_DisplayUrl();
DisplayUrl();
?>
<?php
$url = " www.webjx.com ";
fonction _DisplayUrl() {
écho $url;
}
fonction DisplayUrl(){
URL $ globale ;
écho $url;
}
_DisplayUrl();
DisplayUrl();
?>
La méthode _DisplayUrl n'affichera aucun résultat car la variable $url est inaccessible dans le corps de la méthode _DisplayUrl. Ajoutez simplement global avant $url, comme la méthode DisplayUrl.
Les variables globales définies dans le corps de la méthode sont accessibles en dehors de la méthode :
afficher plaincopy vers clipboardprint ?
<?php
fonction _DisplayUrl() {
global $monNom ;
$monNom='yibin';
}
_DisplayUrl();
echo $monNom; //sortie yibin
?>