Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Sprachelemente und Syntax  Teil von  Variablen
Professional CronJob-Service

Suche

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP?
In über 130.000 Beiträgen finden Sie sicher die passende Antwort!  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 
 
Gültigkeitsbereiche und Sichtbarkeit von Variablen: Seite 1

SELFPHP ist Shopware Solution Partner
Shopware ist ein vielfach ausgezeichnetes Onlineshop-System der shopware AG, das auf PHP. Zend Framework und SQL basiert.
SELFPHP unterstützt Sie als Shopware Solution Partner bei der Konzeption, Programmierung und Realisierung Ihres Onlineshops und passt Shopware bei Bedarf an Ihre Unternehmensbedürfnisse an. Weitere Informationen



Ein wichtiges Thema im Zusammenhang mit Variablen ist deren Gültigkeitsbereich und Sichtbarkeit. Generell gilt, dass in PHP Variablen immer nur in ihrem lokalen Kontext sichtbar sind.

Dieser beinhaltet auch den Bereich für Dateien, die per include- oder require-Anweisung eingebunden wurden, z. B.:

$autor = "Matthias";
include "buch.inc.php";

Die Variable $autor ist auch in der eingebundenen Datei buch.inc.php verfügbar. Eine innerhalb einer Funktion definierte Variable ist außerhalb der Funktion nicht sichtbar. Umgekehrt gilt dasselbe, d. h., eine außerhalb sämtlicher Funktionsblöcke global definierte Variable hat innerhalb eines Funktionsblocks keine Gültigkeit.

Beispiel

<?php
// Globaler Bereich
$preis = 9.99;
function berechne() {
  // Referenz auf einen lokalen Bereich
  return $preis;
}
$betrag = berechne();
if ($betrag) {
  echo $betrag;
} else {
  echo "Keine Ausgabe, die Variable ist lokal nicht sichtbar!";
}
?>

Ausgabe
Keine Ausgabe, die Variable ist lokal nicht sichtbar!

Um zu erreichen, dass die globale Variable $preis auch lokal innerhalb der Funktion berechne bekannt ist, muss diese explizit mithilfe des Schlüsselworts global innerhalb der Funktion bekannt gemacht werden, man lädt sie sozusagen ein.

Beispiel

<?php
$preis = 9.99;
function berechne() {
  global $preis;
  return $preis;
}
$betrag = berechne();
if ($betrag) {
  echo $betrag;
} else {
  echo "Keine Ausgabe, die Variable ist lokal nicht sichtbar!";
}
?>

Ausgabe
9.99

Hinweis: Auf den Einsatz und die Verwendung von Funktionen wird im Abschnitt 3.8 »Funktionen und Prozeduren eingegangen«.


Zugriff über $GLOBALS

Eine andere Möglichkeit, im lokalen Kontext einer Funktion auf eine globale Variable zuzugreifen, steht über das von PHP definierte Array $GLOBALS zur Verfügung.

Hierbei handelt es sich um ein assoziatives Array, das die Namen der globalen Variablen als Schlüsselwörter verwendet. Den Zugriff innerhalb des lokalen Kontextes einer Funktion über das Array $GLOBALS auf die lokale Variable $preis zeigt folgendes Beispiel:

<?php
$preis = 9.99;
function berechne() {
  return $GLOBALS[preis];
}
echo berechne();
?>

Ausgabe
9.99




Umwandeln und Prüfen von Variablen
 




:: Premium-Partner ::

Webhosting/Serverlösungen

PSW GROUP GmbH & Co. KG weitere Premium-Partner
 

:: SELFPHP Sponsor ::

HighText Verlag Graf und Treplin OHG weitere Sponsoren
 


:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Webhosting/Serverlösungen

Suchen Sie den für Sie passenden IT-Dienstleister für Ihr Webhosting-Paket oder Ihre Serverlösung?

Sie sind nur ein paar Klicks davon entfernt!


 

Ausgewählter Tipp im Bereich PHP-Skripte


Checkboxen-Verwaltung mittels Binärwerten

Weitere interessante Beispiele aus dem SELFPHP Kochbuch finden Sie im Bereich PHP-Skripte
 

SELFPHP Code Snippet


Strings (aus einem Formular) vor Cross-Side Scripting schützen

Weitere interessante Code Snippets finden Sie auf SELFPHP im Bereich PHP Code Snippets
 
© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt
© 2005-2017 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de