02297-9095006
info@agent-media.com


PHP Programmierung: Eine Einführung

PHP steht für PHP: Hypertext Preprocessor. Es handelt sich um eine Programmiersprache, die in der Regel von einem Webserver interpetiert wird, um eine HTML-Seite zu erzeugen. Browser wie Firefox oder Google Chrome oder Windows Edge (früher: Internet Explorer) können die HTML-Seiten interpretieren und zeigen Sie dem Webnutzer als lesbare Seite an. Wie andere Server-Techniken wird auch die PHP Programmierung dazu genutzt, Daten, die auf dem Server (zum Beispiel in einer Datenbank) vorgehalten oder aggregiert werden, in der Ausgabe nutzen zu können. Das können etwa Profildaten von Mitgliedern eines Portals, Forebeiträge oder die Artikel eines Online-Shops sein.

Das "Hello World"-Beispiel der PHP Programmierung

Wie in jeder Programmiersprache ist auch PHP die Ausgabe eines der simpelsten Beispiele 

<?php
    echo 'Hello World';
?>

Als Startdirektive ist das öffnende <?php erforderlich. So weiß der PHP-Interpreter, dass hier PHP-Code folgt. Dann werden die Worte 'Hello World' mit Hilfe des eingebauten Befehls echo ausgegeben. Durch das schließende ?> wird dem Interpreter mitgeteilt, dass ab hier kein PHP mehr folgt. Er schaltet dann in den Textmodus und gibt darauf folgende Angaben einfach aus. Ein schließendes Tag am Ende einer Datei ist übrigens unnötig, da der Interpreter hier automatisch in den Textmodus über geht. Man hätte das Beispiel auch wie folgt schreiben können, um dieselbe Ausgabe zu erzielen.

<?php echo 'Hello'; ?> World

Templates und PHP: So entsteht die  HTML-Ausgabe

Eine PHP-Datei kann mehrer PHP-Schnipsel enthalten, die jeweils wie oben geöffnet und geschlossen werden. Dadurch kann man Daten per PHP in ein vorhandenes HTML-Grundgerüst (Template) einfügen. Hier ein einfaches Beispiel.

<!DOCTYPE html>
<?php
    $title = 'Meine erste HTML-Seite mit PHP';
    $headline = 'Überschrift meiner ersten Seite';
    $text = 'Der Textinhalt meiner ersten Seite';
?>
<html>
    <head>
        <meta charset="utf-8" />
        <title><?php echo $title; ?></title>
    </head>
    <body>
        <h1><?php echo $headline; ?></h1>
        <p>
            <?php echo $text; ?>
        </p>
    </body>
</html>

Hier werden Variablen für Seitentitel, Überschrift und Inhaltstext des HTML-Dokuments definiert. Variablen werden in PHP durch ein führendes $-Zeichen gekennzeichnet. Diese können dann im HTML-Rumpf ausgegeben werden. Näheres zum Aufbau des HTML-Dokumentes finden Sie auf der Info-Seite zur HTML-Programmierung.

Weitere Template-Techniken für PHP

Das obige Beispiel erhebt nicht den Anspruch die besten Code-Praktiken zu nutzen. So ist es etwa üblich, den Code (oben: die Variablenzuweisungen) in einer separaten Datei zu bewerkstelligen. Außerdem sollte man tunlichst darauf achten, dass die Variablen vor der Ausgabe für HTML codiert werden, zum Beispiel mit Hilfe der Funktion htmlspecialchars. Nur so werden Zeichen wie <,> und &, die in HTML eine spezielle Bedeutung haben, korrekt wiedergegeben.

Darüber hinaus gibt es auch Template-Engines wie Smarty und Twig. Mit ihnen ist es noch einfacher, PHP-Code und HTML-Dokumentanweisungen sauber zu trennen.

Objektorientierte Programmierung in PHP

PHP erlaubt es grundsätzlich, sowohl funktional als auch objektorientiert zu programmieren. Die objektorientierte Programmierung (OOP) hat sich in der Praxis immer wieder bewährt. Mit Hilfe dieser Methode sind große und kleine, sogenannte Frameworks entstanden. Dies sind Klassenbibliotheken, die wiederkehrende Aufgaben bereits abdecken.

Eine einfache PHP-Klasse

Eine Klasse ist eine Zusammenstellung von Variablen und Methoden zu einer logischen Einheit. Als Beispiel habe ich Bücher mit Titel und ISBN-Nummer gewählt. Die Klasse steht für ein beliebiges Buch, ein konkretes Buch wäre das Objekt, das man unter Programmierern auch als "Instanz der Klasse" bezeichnet.

<?php
    class Book
    {
        private $_title;
        private $_isbn;
        
        public function setTitle($title) {
            $this->_title = $title;
        }
        
        public function getTitle() {
            return $this->_title;
        }

        public function setIsbn($isbn) {
            $this->_isbn = $isbn;
        }

        public function getIsbn() {
            return $this->_isbn;
        }
    }
    $book = new Book();
    $book->setTitle('Moby Dick');
    $book->setIsbn('3596901952');
    echo 'Das Buch mit dem Titel ' . $book->getTitle() . ' hat die ISBN ' . $book->getIsbn();
?>

Die Variablen $_title und $_isbn sind privat. Das heißt sie werden nur innerhalb der Klasse zugewiesen. Über sogenannte Setter- und Getter-Methoden können Sie auch von außen geändert werden und ausgelesen werden.

Das obige Beispiel ist sehr einfach gehalten. Moderne PHP-Version enthalten alle wichtigen Komponenten für eine zeitgemäße Programmarchitektur. Dazu zählen Interfaces, (einfache) Vererbung und Namespaces. Sogenannte Traits können zudem seit einiger Zeit dafür genutzt werden, Codesegmente über Vererbungshierarchien hinweg zu nutzen.

So finden Sie Ihren PHP-Programmierer

Sollten Sie mit dem Gedanken spielen, einen PHP-Programmierer oder eine Entwicklerin zu engagierem, sollten Sie unbedingt auf seine oder ihre Erfahrung im Bereich der OOP und mit mindestens einem gängigen Framework wie Zend, Symfony oder Yii achten.

Als Anwendungsentwickler habe ich das Handwerkszeug, wie zum Beispiel Entwurfsmuster, für ein optimal wartbares, objektorientiertes Design von der Pike auf gelernt. Gerne übernehme ich als Freelancer Ihr PHP-Projekt. Sollten Sie mich vor Ort benötigen, ist es von Vorteil wenn Sie im rheinischen Raum um Hürth, Köln, Bonn und Brühl beheimatet sind. Kontaktieren Sie mich per Mail, Telefon oder Webformular. Die Kosten entnehmen Sie bitte der Seite Skills & Preise.