Programmieren mit php und mySQL (Variable) - Guru 2.0
Programmieren mit php und mySQL (Variable)

Programmieren mit php und mySQL (Variable)

Hier der zweite Teile des Programmierkurses für php und mySQL. Im ersten Teil habe ich die Grundlagen von php und die Funktionsweise beschrieben. Diesmal ist ein grundlegender Teil bei jeder Programmiersprache dran: Die Variablen.

Allgemeines

Was sind eigentlich Variable? Bis jetzt kennst Du diese Bezeichnung vielleicht aus der Mathematik von Formeln, wie: y = 5x – 17. Hier sind y und x die Variablen oder auch die Platzhalter. So ähnlich gilt das auch für die Programme. Variable sind Platzhalter und auch Speicherplätze in denen Werte abgelegt werden. Ohne Variable kann eine Applikation nicht arbeiten, denn sie kann keine Werte speichern und zu einem späteren Zeitpunkt weiterverarbeiten.

Wenn Du dich beispielsweise an einer webAndwendung mit dem Benutzernamen testinger anmeldest, muss die Applikation in der Folge ja “wissen”, dass Du testinger bist. Und dieses Wissen (oder Merken) passiert in dem die Applikation den Wert in einer Variablen ablegt (speichert).

Namenskonventionen

Nochmals zur Wiederholung aus dem ersten Teil: Die Namenskonvention von Variablen in php:

  • sind kontextsensitiv (sie unterscheiden zwischen Groß- und Kleinschreibung)
  • beginnen immer mit einem Dollarzeichen ($)
  • nach dem $ sind nur Buchstaben oder der Unterstrich (_) erlaubt
  • dürfen nur die Zeichen A – Z, a – Z, _ und 0 – 9 enthalten
  • dürfen kein reserviertes (normalerweise ein Befehl von php) Wort sein

Daher sind beispielsweise folgende Namen erlaubt:

  • $vorName
  • $vorName1
  • $_vor_name
  • $_vorName_1
  • $vor_1_Name

und folgende Variablenbezeichnungen verboten:

  • vor$name
  • vorName
  • $1Vorname
  • $Vor Name
  • $häuser
  • $vor$Name

Natürlich wäre vom Prinzip her $häuser erlaubt, genauso wie viele andere Sonderzeichen des ASCII-Zeichensatzes. Aber da sich die Zeichencodierungen von System zu System unterscheiden, kann es hier zu Problemen kommen. Gerade da wir in Europa immer zwischen verschiedenen Zeichensätzen wechseln, sollte man sich auf die oben beschriebenen Namenskonventionen beschränken. So kann man sich einiges an Fehlern ersparen. Wenn man auf einem Apple-System inEuropa schreibt und die Anwendung auf einen UNIX-Server in Kanada hochlädt, kann es auf Grund der Codierung zu Problemen kommen. Daher ist es am sinnvollsten, jede Art von Sonderzeichen zu vermeiden.

Zusätzlich gibt es noch die Schreibweise der Namen von Variablen, Funktionen und Methoden. Dies ist zwar keine zwingende Erfordernis für eine bestimmte Schreibweise in php, aber es ist einfach ein guter Programmierstil. Natürlich kann jeder seine eigenen Benennungsregeln und Arten der Groß-/Kleinschreibung festlegen, trotzdem hat sich die camelCase Benennung mehr oder weniger durchgesetzt. Bei dieser Art der Beschriftung wird der erste Buchstabe des Namens kleingeschrieben und jeder erste Buchstabe eines neuen Wortes groß, beispielsweise: $vorNameKunde, $kundenVorName oder $umsatzNettoVorMonat. Man sollte eine Konvention festlegen und sich dann in der ganzen Applikation oder auch sein Programmiererleben lang daran halten. Dies erleichter die Wartung der Anwendung erheblich, denn man findet sich schnell wieder zu recht.

Variablentypen

php ist prinzipiell eine nicht-typisierende Sprache und kennt zusätzlich auch keine Deklaration von Variablen. Du kannst daher direkt Variable in die Anwendung einfügen, ohne sie vorher zu deklarieren (oder definieren) und zu initialisieren (mit einem Anfangswert belegen). Dies steht im kompletten Gegensatz zu typisierenden Sprachen wie C# oder Java, welche bevor eine Variable verwendet wird, deren Deklaration brauchen.

Natürlich ist die Version von php für den Anfänger praktisch, denn er muss sich um diesen Teil der Programmierung nicht kümmern. Für den Profi oder auch für größere Anwendungen ist dies jedoch ein Nachteil. Denn so können “Variablen-Leichen” (nie verwendete Variable) oder ein überbordendes Gewirr an Variablen entstehen.

Trotz dieser Einfachheit kennt php Variablentypen. Ein Typ kennzeichnet die Art des Inhaltes der Variablen. Dies ist eine Erfordernis bei einem Computer, denn jede Variable belegt Speicherplatz. Daher ist es sinnvoll, dass der Computer nur soviel Platz reserviert wie nur unbedingt notwendig. Dir ist sicher klar, dass ein Text wie Guru mehr Platz braucht wie eine Zahl 4. Daher sind für Computer Variablentypen wichtig. Hier die von php intern verwendeten Variablentypen:

  • integer (Ganzzahl, wie 10, 5, -20)
  • float (Zahl mit Fließkomma, wie 10,55 oder -0,34234)
  • string (Text wie “Guru” oder “php Kurs”)
  • bool (auch boolean, Booleanscher Wert, kann nur zwei Zustände (wahr oder falsch) annehmen.
  • array (eine Liste von Variablen)
  • object (ein Objekt innerhalb der Anwendung)
  • null (nicht definiert)

Wie kommt jetzt php zu diesen Typen, wenn Du sie nicht festlegen kannst? Das ist eigentlich ganz einach! Je nach dem, welchen Wert Du einer Variablen übergibst, dessen Typ übernimmt sie. Auch kann sich ein Variablentyp einfach ändern, php kümmert sich selbstständig darum.

[php]//Die Variable varName hat den Typ integer
$varName = 10;
//Die Variable varName hat den Typ string
$varName = "Guru 2.0";
//Die Variable varName hat den Typ double
$varName = 13.0769[/php]

Zuweisen von Werten

Wie Du im obigen Beispiel siehst, erfolgt die Zuweisung von Werten mit einem Gleichheitszeichen. Wie ganz oben beschrieben, erreichst Du mit der Zuweisung das Merken von Werten innerhalb der Applikation. Die generelle Syntax lautet:

[php light=”true”]variable = wert;[/php]

Du darfst aber das Gleihheitszeichen nie als mathematischen Operator sehen oder verstehen, sondern es ist ein Zuweisungs-Operator. Stelle Dir das Zeichen einfach als einen Pfeil nach links vor.

[php light=”true”]variable ? wert[/php]

Du siehst direkt wie der Wert in die Variable geschoben wird. Mit dieser Sichtweise kommst Du nie in die Versuchung, diese Programmanweisung als Gleichung zu interpretieren.

Mit dem zweiten Teil hast Du jetzt Dein php-Wissen um Variable und Variablentypen erweitert. Der nächste und dritte Teil wird sich mit Arrays beschäftigen

Information

Diese Artikelserie ist mit dem Tag phpMySQL@Kurs versehen. Damit kannst Du schnell alle Teile des Kurses finden: https://www.guru-20.info/tag/phpMySQL@Kurs

Startseite bzw. Inhaltsverzeichnis des Kurses

Es wurden 4 Kommentare zu diesem Beitrag geschrieben.

  • Oliver Klee

    Sehr schön erklärt!
    Aber ein paar Sachen sind nicht ganz korrekt:

    und folgende Variablenbezeichnungen verboten:
    * $häuser

    ist erlaubt. Bei den Buchstaben sind auch Sonderzeichen erlaubt, so lange sie sich im erweiterten ASCII-Code (128-255) befinden.

    Und afaik sind es keine Zahlen vom Typ Double, sondern vom Typ Float(Fließkommazahlen). Den Typ Boolean (true/false) ist auch nicht dabei.

    Das ist mir jetzt beim ersten drüber lesen aufgefallen.
    Weiter so!

    Gruß
    Oliver

  • Guru 2.0 Autor

    Hallo Oliver!
    Danke für den Hinweis. Ist auch schon verarbeitet. Ich hatte auch noch den Typ ‘null’ vergessen. 😉

  • Oliver Klee

    Nett das du die camelcase schreibweise erwähnst 🙂 Ich persönlich verwende die nur bei Funktionen und Methoden. Variablen schreib ich Grundsätzlich klein. Die camelCase Schreibweise erinnert mich zu stark an den Aufbau von Funktionsnamen, was zu Irritationen führen kann. Ich persönlich bevorzuge daher die Unterstrich-Methode, die lange Zeit gang und gäbe war (und es auch heute zum Teil noch ist). Auch mag ich hier eine konsequente Kleinschreibung. So kann man auf dem allerersten(!) Blick erkennen, dass es sich um eine Variable handelt und nicht um eine Funktion.
    Meine persönliche Meinung zu dem Thema 🙂

  • Guru 2.0 Autor

    Ich bevorzuge generell die camelCase Schreibweise, da ich aus einer anderen “Schule” der Programmierung komme. Dort hat man Unterstriche generell nur in Ereignissen, Klassen- und Objektnamen benutzt, also fast exakt umgekehrt wie bei Dir. Aber das sind ja persönliche Vorlieben und jeder kann hier seine eigene “Religion” vertreten. Ich schreibe halt aus meiner langen Praxis als Programmierer und da haben sich gewiss verschiedene “Faulheiten” eingeschlichen.

Blogheim.at Logo
Diese Website verwendet Cookies - nähere Informationen dazu finden Sie in unserer „Datenschutzerklärung“. Klicken Sie auf „Ich stimme zu“, um Cookies zu akzeptieren und unsere Webseite zu besuchen, oder klicken Sie auf „Cookie-Einstellungen“, um Ihre Cookies selbst zu verwalten.