PHP
PHP Overview
Programmiersprache PHP
Vom 1-Mann-Projekt zu einer der beliebsten Programmiersprachen
Intro
Entstehung von PHP, aktuelle Version(en) und Trends
Wer heute PHP lernen oder programmieren will, wird sich sicherlich freuen, was mit PHP alles möglich ist. Um aber verstehen zu können, warum manches in PHP funktioniert und manche Sprachbestandteile aber noch fehlen, sollte man einen Blick auf die Entstehungsgeschichte von PHP geworfen haben. Vieles an Syntax und Funktionalität von PHP entstand erst nach über 15 Jahren Entwicklungszeit.
Entstehung. Popularität. Maßgebende Versionen. Trends. Vergleich zu anderen Sprachen. Eine Einführung in die Entstehung, die Bedeutung und die Zukunft von PHP in Verbindung und im Vergleich zu anderen Techniken.
Installation
PHP beschaffen. PHP installieren. PHP betreiben. Apache. Nginx. MySQL. Die Grundlagen und ersten Schritte. Einen Webserver für PHP in 5 Minuten installieren. PHP mit Apache in MariaDB als Bundle. Wenn es ganz einfach sein soll.
In diesem Themenblock beschreiben wir die Installation von Software auf einem Windows PC, um mit einer Open-Source IDE (Entwicklungsumgebung) sowohl PHP, HTML, CSS, JS, XML, XSD als auch parallel JAVA programmieren kann, damit Sie von Beginn.
Hinweis: PHP erfordert kein JAVA. JAVA dient im Bereich fortgeschrittener Themen als Beispiel, wie man mit PHP und JAVA Daten zwischen Anwendungen austauschen kann, welche in verschiedenen Programmiersprachen realisiert wurden.
HTML for PHP
Die wichtigsten HTML Befehle für den Einstieg in PHP
Auch wenn viele PHP Entwickler bei der Entwicklung von Softwarelösungen schon seit Jahren oder Jahrzehnten oftmals fast überhaupt kein HTML mehr programmieren müssen oder auch keine einzige HTML-Zeile im PHP Code vorkommt, ist es aber dennoch zwingend erforderlich, dass jeder PHP Entwickler im Mindestumfang die Syntax sowie den Sinn und Zweck von HTML verstanden hat.
Ordner- und Dateinamen
Im Grunde weiß jeder, dass PHP Dateien zumeist die Endung
.php
haben. Zwischen dem,
was aber an Datei- und Verzeichnisnamen möglich ist und
dem, was man spätestens seit PHP 8.x einem Entwickler
empfehlen sollte, gibt es in Bezug auf in PHP über Jahre
programmierte Anwendungen gewisse Abweichungen.
In diesem Themenblock befassen wir uns zuerst einmal dem grundlegenden Aufbau der Verzeichnisse und Dateien einer PHP Anwendung.
Daten, Logik und Darstellung
Nachdem wir uns bislang mit dem Prinzip von HTML Markup und PHP Tags befasst haben, beginnen wir in diesem Abschnitt nun damit, den PHP Code mit der Logik und den HTML Code mit redaktionellen Informationen und deren Darstellung zu trennen.
Wie man als Einsteiger PHP und HTML in Files strukturieren kann.
Bei PHP Programmierung gibt es drei Strömungen: Die einen Entwickler lieben und nutzen PHP in einer Art und Weise mit include-Anweisungen, ohne Objektorientierung und ohne Typisierung wie quasi in der digitalen Steinzeit vor 2 Jahrzehnten. Es versteht sich von selbst, dass das nur der Einstieg sein kann und mit der tatsächlichen Entwicklung der anderen zwei Typen von PHP Entwicklern nur wenig zu tun hat.
Nichtsdestotrotz beginnen wir die Einführung in PHP mit genau diesem einfachen ursprünglichen Verfahren, weil es der Ansatz ist, mit dem viele Personen, die PHP nutzen, am besten zurecht kommen. Dieses Verfahren ist zwar bei komplexen Anwendungen eine Sackgasse oder der Grund für zig Bugs, aber wie schon erwähnt: Dieses ist ein Einstieg.
Sinnvolle Kommentare klar strukturiert mit/ohne Annotationen in PHP schreiben und nutzen
Sie leben und arbeiten auf diesem Planeten als Entwickler oder auch als Einsteiger nicht allein. Doch auch wenn Sie ein Interesse daran haben sollten, Ihren Code möglichst wenig oder gar nicht zu kommentieren, damit Ihnen nicht ein anderer den Job wegbeißt: Seien Sie sich bewusst, dass auch Sie selbst Ihren eigenen Code noch in 2 Wochen, 2 Monaten oder 2 Jahren verstehen sollten. Es ist nichts peinlich als wenn man dem Kunden erklären muss, dass man den eigenen Code nicht mehr versteht.
Wie man Kommentare in PHP formatiert, versteht man in unter 5 Minuten. Welche Kommentare man schreiben sollte und wie man das tatsächlich macht, ist ein anderer Level.
Grundlegende Syntax von PHP Code
PHP Tags und Ihre Varianten: Muss man eigentlich PHP Tags schließen? Gibt es eine verkürzte Syntax von PHP Tags? Kann man PHP Tags komplett weglassen? Wann haben Funktionen Klammern und wann nicht? Muss ich Variablen deklarieren? Wozu dient eine Initialisierung?
PHP gilt bekanntlich als einfache Programmiersprache,
aber wenn Sie einen kurzen Blick auf die nachfolgenden
Ausdrücke werfen, welche alle korrektes PHP sind und
alle eine andere Bedeutung haben, sollte Ihnen eines
bewusst sein: Die Syntax von PHP erfordert zum Verständnis
mehr also nur echo "Hallo Welt!";
.
$a = b();
$a = $b;
$a = $b++;
$a = ++$b;
$a += $b;
$a += ++$b;
$a += $b++;
$a = $$b;
$a += $$b++;
$a = b();
$a = (b()+$a);
$a = ()=>return B;
$a = $a();
$a = A;
$a = A::a;
$a = A::$a;
$a = A::a();
$a = A::$a();
$a = new A();
list($a,$b) = a->getAB();
$a = A::createInstance();
$a = $factory->createA();
$a = @b();
$a=($b)?$c:$d;
$a=$b?:$c;
$a=$b->c()->d()->e;
$a=$b ?? $c;
Zum Verständnis erforderliche Begriffe
Datei- und Verzeichnisnamen in PHP: Übliche Gepflogenheiten und Empfehlungen zu Datei- und Verzeichnisnamen für PHP Anwendungen
Syntax: Grundlegende Syntax von PHP Dateien, Kommentaren, der Kombination von HTML mit PHP sowie Grundlagen zur Syntax von Statements.
Variablen: Fixe und variable Werte. Deklarationen. Typisierung. Globale Variablen. Funktionsvariablen. Scope.
Datentypen: Grundlegende Datentypen, implizierte und explizite Typisierung, implizierte und explizite Typkonvertierung.
Output: Mit PHP Ausgaben erzeugen.
Konstanten:
Varianten der Erstellung von Konstanten in PHP:
In PHP gibt es wie in anderen Sprachen auch die Option, unverändliche
Werte definieren zu können. Die Besonderheit im Falle von PHP ist die,
dass es mehrere Varianten für die Erstellung von unveränderbaren Werten
gibt, von denen eigentlich auf den ersten Blick am vielversprechenste
Befehl const
für die von Einsteigern erwarteten globalen
Konstanten aber nicht wie erwartet funktioniert.
Operatoren: Über die normalen Rechenoperatoren und Zuweisungsoperatoren hinaus gibt es in PHP eine Reihe weiterer Operatoren in der Syntax von PHP welche man kennen sollte, da eine Suche im Internet gegenüber einer Suche nach Stichworten bei Operatoren sich oftmals etwas schwieriger gestaltet.
Schleifen in PHP: Loops sind PHP.
Kontrollstrukturen: Damit ein Programm eigenständig Entscheidungen treffen kann, bedarf es einer gewissen Programmlogik. Um ein Programm aber in die Lage versetzen zu können, nicht nur Zustände erkennen ermitteln sondern auch auf dieser Grundlage Entscheidungen treffen und den Programmverlauf anpassen zu können, erfordert zusätzliche Befehle zur Programmsteuerung.
Unterprogramme: Realisierung von Unterprogrammen in PHP, noch ohne Verwendung von Funktionen.
Funktionen: Funktionen
Debugging: Debugging
Einfache Objekte: PHP verfügt über die einfachen Datentypen für Zahlenwerte, Bool'sche Werte sowie Strings nebst numerisch indizierten und assoziativen Arrays noch über einen weiteren grundlegenden Datentyp: Den Datentyp 'stdClass' und damit einen Datentyp, mit welchem sich in PHP bereits Objekte definieren lasse, ohne dass man selbst eine Klasse hat programmieren müssen.
Destructing
// assign multiple variables und Destructing
class MeineKlasse {
public function getAB() {
return [1, 2]; // Beispielwerte
}
}
$a = new MeineKlasse();
list($aValue, $bValue) = $a->getAB(); // Using list() to destructure array
echo $aValue; // Outputs: 1
echo $bValue;
Wofür steht eigentlich PHP? Ist PHP kostenlos? Darf man PHP kommerziell einsetzen? Ist PHP zukunftssicher? Wo kann ich PHP beziehen? Muss es zwingend PHP sein oder gibt es Alternativen?
Optimierte Speicherverwaltung
PHP 8.5 führt Verbesserungen in der Speicherverwaltung ein, die eine effizientere Nutzung des Arbeitsspeichers ermöglichen.
<?php
// Beispielcode für die optimierte Speicherverwaltung
?>
Neue asynchrone Funktionen
Die Einführung neuer asynchroner Funktionen in PHP 8.5 ermöglicht die parallele Ausführung von Aufgaben und verbessert die Performance bei I/O-intensiven Operationen.
<?php
// Beispielcode für asynchrone Funktionen
?>
Verbesserte Typensicherheit
PHP 8.5 stärkt die Typensicherheit durch erweiterte Unterstützung von Union Types und verfeinerte Typprüfungen.
<?php
// Beispielcode für verbesserte Typensicherheit
?>
Erweiterte Datenbankunterstützung
Die Unterstützung für Datenbanken in PHP 8.5 wurde erweitert, einschließlich verbesserter Integration mit PostgreSQL und MySQL.
<?php
// Beispielcode für erweiterte Datenbankunterstützung
?>
Verbesserte Fehlerbehandlung
PHP 8.6 bietet verbesserte Mechanismen zur Fehlerbehandlung, die eine detailliertere Erfassung und Handhabung von Ausnahmen ermöglichen.
<?php
// Beispielcode für verbesserte Fehlerbehandlung
?>
Erweiterungen für WebSockets
PHP 8.6 enthält Erweiterungen für die Unterstützung von WebSockets, die eine effizientere Echtzeitkommunikation ermöglichen.
<?php
// Beispielcode für WebSocket-Erweiterungen
?>
Verbesserungen der Standardbibliothek
Die Standardbibliothek von PHP 8.6 wurde erweitert und bietet zusätzliche Funktionen und Optimierungen.
<?php
// Beispielcode für die verbesserte Standardbibliothek
?>
Verbesserte Debugging-Tools
PHP 8.6 bietet verbesserte Debugging-Tools, die Entwicklern helfen, Probleme schneller und effizienter zu identifizieren und zu beheben.
<?php
// Beispielcode für Debugging-Tools
?>
Fußnoten
Entdecke SNEWMEDIA. Es ist einfacher als Du denkst.
Stelle noch heute Deine Anfrage.