Startseite   |  Site map   |  A-Z artikel   |  Artikel einreichen   |   Kontakt   |  
  


informatik artikel (Interpretation und charakterisierung)

Html

Website

Sprache

Software

Die architektur von php


1. Java
2. Viren




Die bisher schlicht als PHP Processor oder PHP Interpreter benannte Software besteht, seit PHP modular aufgebaut ist (ab Version 4) wiederum aus verschiedenen Teilen. Zusammen bilden dieses das PHP System.




Die SAPI Ebene (Server Application Programming Interface) kommuniziert mit dem Webserver und ist somit der Teil, der Anfragen des Clients vom Webserver entgegennimmt. Auf dieser Ebene werden serverspezifische Befehle in systemunabhängige PHP Befehle, und umgekehrt, zur weiteren Verarbeitung umgesetzt.



Die ZEND Engine fungiert als Parser (language engine) in PHP. Ein Parser (engl.: to parse "analysieren" bzw. von lateinisch pars "Teil"; weshalb Parser im Deutschen gelegentlich auch als Zerteiler bezeichnet werden) ist ein Computerprogramm, das entscheidet, ob ein Eingabetext zur formalen Sprache einer bestimmten Grammatik gehört. Anschaulich dargestellt ist ein Parser diejenige Software, welche die Anweisungen des Anwenders in für den Computer verständlichen Code übersetzt.

Im Allgemeinen wird ein Parser dazu verwendet, einen Text in eine neue Struktur zu übersetzen. HTML-Code ist beispielsweise für einen Computer zunächst einmal nichts anderes als ein Text, also eine Aneinanderreihung von Buchstaben und Zeichen. Der in einem Webbrowser enthaltene Parser analysiert das HTML und erstellt daraus eine Beschreibung der Webseite als Datenstruktur, welche die Grafik-Maschine des Browsers anschließend graphisch auf den Bildschirm überträgt. Ähnlich verhält es sich auch mit PHP Code, nur dass dieser nicht vom Parser im Browser sondern von der am Server installierten PHP Software abgelesen und interpretiert wird.

Durch das Prinzip "erst kompilieren, dann ausführen" kann sichergestellt werden, dass nur Seiten ausgeführt werden, die keine Fehler aufweisen, da die Zend Engine erst, wenn eine Seite komplett geparst und als syntaktisch korrekt angesehen wird, zur Ausführung von der Engine an die Ausführungsschicht (API Modulebene) übergeben wird.



Die API Modulebene beinhaltet die am Server installierten Programmbibliotheken und Module der PHP Software. Eine Programmbibliothek bezeichnet in der Programmierung eine Sammlung von Programmfunktionen für zusammengehörende Aufgaben.

Bibliotheken sind im Unterschied zu Programmen keine eigenständigen Einheiten, sondern Hilfsmodule, die Programmen zur Verfügung stehen.

So gehört unter anderem das oft genutzte MySQL Modul zur Anbindung einer relationalen Datenbank an ein PHP Skript, die Programmroutine PDFLIB zum dynamischen Erstellen von PDF Dateien durch ein PHP Skript, sowie IMAP, welches den Zugriff und die Verwaltung von Mails auf dem Mailserver ermöglicht, zu dieser Ebene.



Der Client merkt von den oben erklärten Vorgängen jedoch nichts, da das PHP Skript für ihn vollkommen verborgen bleibt. Auch die Datenbank, auf die durch ein PHP Skript zugegriffen wird, bleibt für den Client nicht einsehbar, was einen Sicherheitsgewinn darstellt. Der Server schickt zumeist reinen HTML Quelltext zurück (auch andere Dateiformate möglich), der vom Browser des Clients gelesen wird. Neben HTML Quelltext als Ausgabe des PHP Processors können auch Bilddateien und PDF Dateien dynamisch erzeugt werden.

PHP wird somit zu den serverseitigen Skriptsprachen gezählt. Diese unterscheiden sich in einem Punkt von Programmiersprachen: Bei einer Programmiersprache wird der Programmcode durch einen Compiler in den Maschinencode übersetzt, und das Produkt als ausführbare Datei gespeichert. Die Anweisungen eines Skripts werden jedoch bei jedem Aufruf erneut abgearbeitet. Somit sind zwar Skripts rechenintensiver, was bei den heutigen Rechnerleistungen jedoch kaum mehr ins Gewicht fällt.



Neben PHP gehören noch folgende Sprachen in die Gruppe der serverseitigen Skriptsprachen:




Active Server Pages (ASP)
ColdFusion

JSP
PHP

CGI
mod_perl

Server Side Includes (SSI)
.NET


Durch den Einsatz solcher Skriptsprachen können sogenannte dynamische Websites oder ganze Webanwendungen erstellt werden. Dynamische Websites werden im Gegensatz zu statische HTML Seiten, die technisch eine einfache Datei auf dem Webserver darstellen, die an den Client übermittelt wird, erst durch die Anfrage eines Clients dynamisch vom Webserver erstellt.

Es gibt zwei große Einsatzgebiete für dynamische Websites:



1) Dateneingabe erfolgt seitens des Administrators der Internetseite Internetseiten, die ständig aktualisiert werden müssen (Börsenkurse, Nachrichtenseiten etc.). Praktisch bringt diese Technologie den Vorteil, dass Inhalte einer Internetseite direkt online mittels einer bequemen Administrator-Benutzeroberfläche (Admin-Interface) verändert und aktualisiert werden können, ohne dass die komplette Datei neu per FTP auf den Server geladen werden muss. Das File Transfer Protocol ist ein Datenübertragungsverfahren in Netzwerken, die nach dem TCP/IP Prinzip verfahren. Es wird benutzt um Dateien zwischen Server und Client oder clientgesteuert zwischen zwei Servern auszutauschen.


Durch diese online Wartungsmöglichkeit einer Internetseite ist es selbst für Personen möglich eine Internetseite am neuesten Stand zu halten, die selbst über keine Programmierkenntnisse verfügen.



2) Dateneingabe erfolgt seitens des Clients der Internetseite


Internetseiten, die dem Client die Möglichkeit bieten selbst Inhalte an die Website zu übermitteln (Suchmaschinen, Gästebuch etc.). Eine dynamische Internetseite muss auf die vom Client übermittelten Werte reagieren und diese richtig weiterverarbeiten. Die Eingabe von Werten erfolgt meist über das HTML Element (Eingabeformular). Der Inhalt dieses in die Internetseite eingebetteten Formularfelds, welches aus Eingabefeldern, Passwortfeldern, mehrzeiligen Textboxen, Radiobuttons (Optionsbuttons) und weiteren Formularelementen bestehen kann, wird an das serverseitige Skript zur weiteren Datenverarbeitung übermittelt.



Neben der, vergleichsweise einfach zu erlernenden Skriptsprache PHP, lassen sich solche Projekte ua. auch mit Common Gateway Interface (CGI) und anderen serverseitigen Skriptsprachen (siehe Auflistung oben) realisieren.



Ein wesentlicher Vorteil von dynamischen Websites und serverseitigen Skriptsprachen besteht darin, dass diese in ihrer Funktion vollkommen unabhängig vom Betriebssystem und anderen Eigenschaften des Clients sind, da die Datenverarbeitung lediglich am Server und nicht am Rechner des Clients stattfindet. Clientbasierende Skriptsprachen, wie JavaScript, die erst im Browser des Benutzers ausgeführt werden, verursachen des Öfteren Fehldarstellungen und Inkompatibilität aufgrund von verschiedenen Systemkonfigurationen der Clients.



Beim Erstellen einer dynamischen Website mittels PHP sollte man jedoch beachten, dass der Webserver PHP-fähig sein muss, sodass auf diesem PHP Skripts ausgeführt werden können. Gegebenenfalls sollte man sich beim Webspaceanbieter danach erkundigen.

Der am häufigsten verwendete PHP-fähige Webserver, noch vor IIS (Internet Information Server) von Microsoft, ist der Apache HTTP Server. Diese Software ist ein Produkt der Apache Software Foundation, die von Brian Behlenhof gegründet wurde. Der Apache HTTP Server unterstützt mit Unix, Linux, Windows und Mac alle gängigen Betriebssysteme (was besonders wichtig ist in Anbetracht, dass ein Grossteil der Server auf Linux oder Unix laufen um Virenbefall zu verhindern) Der Apache-Webserver ist modular aufgebaut: Durch entsprechende Module kann er beispielsweise die Kommunikation zwischen Browser und Webserver verschlüsseln (mod_ssl), als Proxy-Server eingesetzt werden (mod_proxy) oder komplexe Manipulationen von HTTP-Headern (mod_headers) und URLs (mod_rewrite) durchführen.

Der Apache bietet die Möglichkeit, mittels serverseitiger Skriptsprachen Webseiten dynamisch zu erstellen. Häufig verwendete Skriptsprachen sind PHP und Perl. Diese sind kein Bestandteil des Webservers, sondern müssen ebenfalls entweder als Module eingebunden werden oder über die CGI-Schnittstelle angesprochen werden.



PHP ist in der Syntax stark an Java und Perl angelehnt. Das Skript kann in jedem beliebigen Texteditor geschrieben werden und als *php-Datei gespeichert werden. Da das PHP Skript jedoch beim Aufruf erst interpretiert werden muss, reicht es nicht aus die erstellte Datei zum Testen mit dem eigenen Browser zu öffnen. Der PHP Code muss erst mit einem PHP tauglichen Werbserver aufgerufen werden. Hierfür empfiehlt sich die kostenlose Lösung Xampp von Apachefriends. Xampp ist für nahezu alle gängigen Betriebssysteme kostenlos im Internet erhältlich und ermöglicht es, PHP Skripte auf dem eigenen Computer, der durch diese Software zum Server wird, zu testen. Xampp unterstützt neben PHP auch Perl und MySQL und lässt sich ohne Vorkenntnisse problemlos installieren und nutzen.



Die Vorzüge von PHP lassen sich erst mit der Anbindung einer SQL Datenbank richtig verdeutlichen. Datenbanken spielen in den heutigen Anwendungen eine große Rolle. Ein Großteil der anfallenden Daten wird in Datenbankmanagementsystemen abgelegt, seien es Artikeldaten, Kundendaten, Geschäftsvorfälle etc. Somit ist die Möglichkeit des Zugriffs auf solche Daten essentiell wichtig.

SQL steht für Structured Query Language und ist eine Abfrage- und Datenmanipulationssprache für relationale Datenbanken. Sie besitzt eine relativ einfache und klare Syntax und ist durch ihre weite Verbreitung regelrecht zu einem Standard avanciert. Bekannte Datenbanksysteme wie der Microsoft SQL Server, neuere Versionen von Microsoft Access, Oracle sowie die kostenlosen Systeme MySQL und PhpMyAdmin greifen auf SQL als Basis zurück.

MySQL ist eine kostenlose Software der schwedischen Firma MySQL AB. Sie ist die im Internet am meisten genutzte SQL Datenbank, zumeist in Verbindung mit einem Apache Webserver und PHP. Die Software unterstützt beliebig viele Datenbanken; in jeder Datenbank beliebig viele Tabellen beliebiger Größe - die Beliebigkeit ist nur vom Betriebssystem beschränkt. Die Tabellen in einer Datenbank können vom Typ her beliebig gemischt sein, Anfragen können sich auf Tabellen unterschiedlichen Typs und unterschiedlicher Datenbanken beziehen, sogar auf verschiedenen Maschinen.

Die Möglichkeit, unterschiedliche Tabellentypen beliebig zu verwenden, macht MySQL zu einem vielseitigen relationalen Datenbankmanagementsystem, das sich hervorragend an das jeweilige Anforderungsprofil anpassen kann. Besonderer Beliebtheit erfreut sich MySQL im Bereich von Webservern, da es hier in der Regel unter der freien Lizenz eingesetzt werden kann, was insbesondere für Provider verlockend ist.

PhpMyAdmin ist eine PHP Applikation (Anwendung) zur Verwaltung von MySQL Datenbanken. PhpMyAdmin ermöglicht es, SQL Datenbanken schnell und einfach über eine grafische Benutzeroberfläche zu erstellen bzw. zu verändern, ohne dabei die SQL Befehle zu kennen.



Weiters lässt sich über die Skriptsprache PHP noch Folgendes feststellen:

PHP ist Browser-unabhängig (da das Skript auf dem Server durch spezielle Software verarbeitet wird und nicht auf dem Clientrechner) und beugt somit Fehldarstellungen auf verschiedenen Systemen vor.
Bei PHP handelt es sich um eine vergleichsweise junge Programmiersprache. Dadurch haben es die Entwickler geschafft, Vorteile von verschiedenen Sprachen (wie z.B. Perl, Java, C, und Java Script) in PHP zu integrieren, ohne jedoch deren Nachteile zu übernehmen.
Durch die Verwendung von serverseitigen Skriptsprachen wie PHP werden Webprogrammierung und Webdesign voneinander getrennt. Durch die Verwendung von Templates wird es möglich, dass Grafiker und Programmierer zusammenarbeiten, ohne dass dabei der Eine etwas von den Aufgaben des jeweils Anderen verstehen muss. Der Webdesigner entwirft ein Layout, das anstatt des eigentlichen Inhalts der fertigen Internetseite, lediglich Platzhalter aufweist. Der Programmierer erstellt ein Skript, welches die gewünschten Inhalte in das Layout beim Aufruf der Internetseite seitens des Clients importiert. Durch die Trennung von Skript und Layout wird auch ein Redesign erheblich vereinfacht.
Für die Benutzung von PHP fallen keinerlei Gebühren in Form von Lizenzen an.
Das PHP Skript bleibt für den Client vollkommen verborgen.
PHP zählt zu den schnellsten serverseitigen Skriptsprachen, da das PHP Modul im Server direkt eingebunden ist und somit nicht bei jeder Anfrage neu gestartet werden muss.
Es ist keine Deklaration von Variablen notwendig, da PHP den Variabelentyp selbst ermittelt.

 
 



Datenschutz
Top Themen / Analyse
indicator Wie sicher sind Pager?
indicator Der Turing - Test
indicator Kopplung von lokalen Netzen-
indicator Das ARPANET
indicator Die Magnetköpfe
indicator Informatik I Zusammenfassung
indicator Erwerbungswege erforderlicher Kompetenzen für das Informationszeitalter.
indicator ELIZA
indicator Datenorganisation
indicator Firewire




Datenschutz
Zum selben thema
icon Netzwerk
icon Software
icon Entwicklung
icon Windows
icon Programm
icon Unix
icon Games
icon Sicherheit
icon Disk
icon Technologie
icon Bildung
icon Mp3
icon Cd
icon Suche
icon Grafik
icon Zahlung
icon Html
icon Internet
icon Hardware
icon Cpu
icon Firewall
icon Speicher
icon Mail
icon Banking
icon Video
icon Hacker
icon Design
icon Sprache
icon Dvd
icon Drucker
icon Elektronisches
icon Geschichte
icon Fehler
icon Website
icon Linux
icon Computer
A-Z informatik artikel:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z #

Copyright © 2008 - : ARTIKEL32 | Alle rechte vorbehalten.
Vervielfältigung im Ganzen oder teilweise das Material auf dieser Website gegen das Urheberrecht und wird bestraft, nach dem Gesetz.
dsolution