Difference between revisions of "PHP Einführung - Erste Programmierschritte"

From Coders.Bay Wiki
Jump to navigation Jump to search
Line 251: Line 251:
?>
?>
</pre>
</pre>


====Mehrdimensionales Array====
====Mehrdimensionales Array====

Revision as of 09:47, 8 April 2022

Vorbereitungsmaßnahmen für das lokale Programmieren mit PHP

Um ein PHP Programm ausführen zu können, benötigt man einen lokalen Webserver. Hierfür installiert man meistens XAMPP (für Mac User: MAMP) auf dem PC.


Coding Standards für das Arbeiten mit PHP:

Links zum Download:


XAMPP oder MAMP installieren

  • Den Apache Webserver starten
  • Speichert eure PHP Dateien in einen Projektordner im htdocs Verzeichnis
  • Damit ihr eure PHP Dateien ansehen könnt, navigiert im Webbrowser zu localhost/HIER_DER_NAME_DEINES_ORDNERS

Screenshot-xampp.png


Dein erstes PHP Programm

  • PHP wird geöffnet mit <?php und geschlossen mit ?>
  • Dazwischen ist der Programmcode
  • print oder echo erzeugt eine Ausgabe am Bildschirm
<!DOCTYPE html>
<html lang="de">
  <head>
    <meta charset="UTF-8">
    <title>Mein erstes PHP Programm</title>
  </head>
  <body>
    <p>
      <?php
      // Zeichenkette
      print "Hallo Welt";
      echo "Hallo Welt";
      ?>
    </p>
    <p>
      <?php
      // Zahl
      print 255;
      ?>
    </p>
    <p>
      <?php
      // Zahl als String
      print "500";
      ?>
    </p>
    <p>
      <?php
      // Rechnen
      print 50*37;
      ?>
    </p>
  </body>
</html>

PHP und HTML miteinander verbinden

  • Schaut euch an wie der Seitenquelltext im Browser dazu aussieht.
Beispiel 1
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Übung</title>
  </head>
  <body>
    <?php
    print "<h1>Willkommen</h1>";
    ?>
  </body>
</html>
Beispiel 2
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Übung</title>
  </head>
  <body>
    <?php
    print "<h1>Willkommen</h1>";
    print "<p>1. Absatz</p>";
    print "<p>2. Absatz</p>";
    ?>
  </body>
</html>
Beispiel 3
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Übung</title>
  </head>
  <body>
    <?php
    // \n hat keine Auswirkung auf die Darstellung im Browser. Bewirkt aber einen Zeilenumbruch im Quellcode
    print "<h1>Willkommen</h1>\n";
    print "<p>1. Absatz</p>\n";
    print "<p>2. Absatz</p>\n";
    ?>
  </body>
</html>
Beispiel 4
<!DOCTYPE html>
<html>
  <head>
  <?php
    print "<meta charset=\"UTF-8\">\n";
    print '<meta name="description" content="Beschreibung der Seite">';
    print "\n";
    print "<meta name='author' content='Beschreibung der Seite'>\n";
    ?>
    <title>Übung</title>
  </head>
  <body>
  <h1>Willkommen</h1>
  <?php
    print "<p>1. Absatz</p>\n";
    print "<p>2. Absatz</p>\n";
    ?>
  </body>
</html>


Variablen

  • Zeichenketten und Variablen können zusammen ausgegeben werden.
  • In JS fügt man sie mit einem Plus zusammen (+)
  • In PHP fügt man sie mit einem Punkt zusammen (.)
  • Additionen, Multiplikationen, Divisionen, Modulo funktionieren im gleichen Schema wie in JS
<?php
/* Variablen werden mit einem Dollarzeichen gekennzeichnet, und folgen der camelCase Schreibweise
Variablennamen dürfen keine Sonderzeichen enthalten */

// Text mit einer Variablen erfassen
$textbaustein = "Meine erste Variable";
print $textbaustein;


// Zahlen als Variable abspeichern
/* Variablen können neben Strings auch numerische oder boolsche Werte besitzen */
$ganzeZahl = 3;
$kommaZahl = 5.39281;
$boolean = true;
print "Ganze Zahl: " . $ganzeZahl . "<br>Kommazahl: " . $kommaZahl . "<br>Boolean: " . $boolean;


// Additionen, Multiplikationen, usw
$bestand = 5;
print "<p>Verfügbare Artikel: " . $bestand . "</p>\n";
$bestand = $bestand - 1;
/* Kurzschreibweise: $bestand--; */
print "<p>Verfügbare Artikel: " . $bestand . "</p>\n";

?>


Numerisches Array

<?php
/* Array deklarieren */
$produkt = array();
$produkt[0] = 1;
$produkt[1] = "Roggensemmel";
$produkt[2] = 0.79;
$produkt[3] = "Bioweckerl vom feinsten";
$produkt[4] = 50;

foreach($produkt as $info) {
  print "<p>" . $info . "</p>\n";
}
?>

<hr>

<?php 
/* oder: kürzere Schreibweise */
$produktAlternative = array(1, "Roggensemmel", 0.79, "Bioweckerl vom feinsten", 50);

foreach($produktAlternative as $info) {
  print "<p>" . $info . "</p>\n";
}


// Einzelnen Wert ausgeben
print "<p>" . $produkt[4] . "</p>\n";
?>


Assoziatives Array

<?php
/* Array deklarieren */
$produkt = array();
$produkt['Artikelnummer'] = 1;
$produkt['Produktname'] = "Roggensemmel";
$produkt['Preis'] = 0.79;
$produkt['Beschreibung'] = "Bioweckerl vom feinsten";
$produkt['Anzahl'] = 50;
foreach($produkt as $i => $info) {
  print "<p>" . $i . ": " . $info . "</p>\n";
}
?>

<hr>

<?php
/* Alternative Schreibweise */
$produktAlternative = array(
  'Artikelnummer' => 1,
  'Produktname' => "Roggensemmel",
  'Preis' => 0.79,
  'Beschreibung' => "Bioweckerl vom feinsten",
  'Anzahl' => 50
);

foreach($produktAlternative as $i => $info) {
  print "<p>" . $i . ": " . $info . "</p>\n";
}


// Array Ausgabe einzelnen Wertes
print "<p>" . $produktAlternative["Preis"] . "</p>\n";
?>


Mehrdimensionales Array

<?php
/* Array deklarieren */
$sortiment = array();
$sortiment[0]['Artikelnummer'] = 1;
$sortiment[0]['Produktname'] = "Roggensemmel";
$sortiment[0]['Preis'] = 0.79;
$sortiment[1]['Artikelnummer'] = 2;
$sortiment[1]['Produktname'] = "Kornspitz";
$sortiment[1]['Preis'] = 0.59;
$sortiment[2]['Artikelnummer'] = 3;
$sortiment[2]['Produktname'] = "Semmel";
$sortiment[2]['Preis'] = 0.99;

/* Debugging mit var_dump um zu sehen was in dem Array drin ist */
var_dump($sortiment);
print "<hr>";

/* Ausgabe einzelner Position */
print "<p>" . $sortiment[2]['Produktname'] . "</p>\n";
print "<hr>";

/* Ausgabe des gesamten Arrays */
foreach($sortiment as $array) {
  foreach($array as $i => $entry) {
    print "<p>" . $i . ": " . $entry . "</p>\n";
  }
}
?>