PHP Einführung - Erste Programmierschritte

From Coders.Bay Wiki
Revision as of 09:54, 10 January 2023 by 85.31.21.47 (talk) (→‎Assoziatives Array)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Vorbereitungsmaßnahmen für das lokale Programmieren mit PHP[edit]

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[edit]

  • Erstelle eine .php Datei
  • 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[edit]

  • Schaut euch an wie der Seitenquelltext im Browser dazu aussieht.
Beispiel 1[edit]
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Übung</title>
  </head>
  <body>
    <?php
    print "<h1>Willkommen</h1>";
    ?>
  </body>
</html>
Beispiel 2[edit]
<!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[edit]
<!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[edit]
<!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[edit]

  • Zeichenketten und Variablen können zusammen ausgegeben werden.
  • In JavaScript, Java,... 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 anderen Programmiersprachen
<?php
/* Variablen werden mit einem Dollarzeichen gekennzeichnet, und folgen der camelCase Schreibweise
Variablennamen dürfen keine Sonderzeichen enthalten */

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


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


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

?>

Numerisches Array[edit]

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

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

<hr>

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

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


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


Assoziatives Array[edit]

<?php
/* Array deklarieren */
$product = array();
$product['itemnumber'] = 1;
$product['productname'] = "Roggensemmel";
$product['price'] = 0.79;
$product['description'] = "Bioweckerl vom feinsten";
$product['amount'] = 50;
foreach($product as $key => $info) {
  print "<p>" . $key . ": " . $info . "</p>\n";
}
?>

<hr>

<?php
/* Alternative Schreibweise */
$productAlternative = array(
  'itemnumber' => 1,
  'productname' => "Roggensemmel",
  'price' => 0.79,
  'description' => "Bioweckerl vom feinsten",
  'amount' => 50
);

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


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

Mehrdimensionales Array[edit]

<?php
/* Array deklarieren */
$productRange= array();
$productRange[0]['itemnumber'] = 1;
$productRange[0]['productname'] = "Roggensemmel";
$productRange[0]['price'] = 0.79;
$productRange[1]['itemnumber'] = 2;
$productRange[1]['productname'] = "Kornspitz";
$productRange[1]['price'] = 0.59;
$productRange[2]['itemnumber'] = 3;
$productRange[2]['productname'] = "Semmel";
$productRange[2]['price'] = 0.99;

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

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

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