Nun, warum Sie nicht nur testen? ;-)
Hinweis: nicht so einfach, wie man denken würde - die vollständige Antwort lesen ;-)
Aufruf der hello_testing();
Funktion, ohne dass die Stellgröße:
hello_testing();
Ich bekomme keine Ausgabe - was bedeutet isset
zurückgegeben false
.
Aufruf der Funktion, nachdem die Stellgröße:
$conditional_random = 'blah';
hello_testing();
Ich erhalte eine Ausgabe:
foo is inside
Welche global
funktioniert wie erwartet zeigt an, wenn die Variable gesetzt ist - gut , darüber sollte man keinen Zweifel haben ^^
aber beachten Sie, dass isset
false
wenn eine Variable gesetzt ist zurück, und null
!
anzeigen manual page of isset()
Was bedeutet, dass ein besserer Test wäre:
function hello_testing() {
global $conditional_random;
var_dump($conditional_random);
}
hello_testing();
und dies zeigt:
null
Nein Hinweis: die Variable vorhanden! Auch wenn null
.
Da ich die Variable nicht außerhalb der Funktion gesetzt habe, zeigt es, dass global
die Variable setzt - aber es gibt keinen Wert hinein; Das heißt, es ist null
wenn nicht bereits außerhalb der Funktion gesetzt.
While:
function hello_testing() {
//global $conditional_random;
var_dump($conditional_random);
}
hello_testing();
Gibt:
Notice: Undefined variable: conditional_random
Beweist, dass Hinweise
;-)
Und aktiviert werden, wenn die globale nicht tat die Variable " set" Das vorherige Beispiel hätte dieselbe Notiz gegeben.
Und schließlich:
function hello_testing() {
global $conditional_random;
var_dump($conditional_random);
}
$conditional_random = 'glop';
hello_testing();
Gibt:
string 'glop' (length=4)
(Rein meinem Beispiel zu demonstrieren, wird nicht betrogen ^^)
Auf einer Seitennotiz versuchen Sie weg von globalen bleiben. Es ist ein sicheres Zeichen für Spaghetti-Code –
@Manos Ich stimme zu, aber wenn Sie in der Wordpress-Community (als ein Beispiel) entwickeln, ist es mehr oder weniger unmöglich, sich von globalen Variablen oder einer Reihe anderer schlechter Konventionen fern zu halten. Meiner Meinung nach, wenn Sie mit PHP arbeiten, haben Sie sich damit abgefunden, schlechte Programmierpraktiken zu tolerieren und müssen nur relativ sichere Wege kennen, um mit dem zu arbeiten, was Sie haben. –