PHP Einführung - Erste Programmierschritte

From Coders.Bay Wiki
Jump to navigation Jump to search

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

  • 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

  • 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 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

<?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

<?php
/* Array deklarieren */
$product = array();
$product['itemnumber'] = 1;
$product['productname'] = "Roggensemmel";
$produkt['price'] = 0.79;
$produkt['description'] = "Bioweckerl vom feinsten";
$produkt['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

<?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";
  }
}
?>