16.2. Embedding PHP in HTML

You embed PHP code into a standard HTMLpage., So können Sie beispielsweise den Titel eines HTML-Dokuments dynamisch generieren:

<html><head><title><?echo $title?></title></head>...

Die <?echo $title?> Teil des Dokumenteswird durch den Inhalt des $title PHPvariable ersetzt. echo ist eine grundlegende Sprachanweisung, mit derSie können Daten ausgeben.

Es gibt einige verschiedene Möglichkeiten, wie Sie Ihren PHP-Code einbetten können. Wie Sie gerade gesehen haben, können Sie PHP-Code zwischen <?und ?,> tags:

<? echo "Hello World"; ?>

Dieser Stil ist der gebräuchlichste Weg, um PHP einzubetten, aber es ist ein Problemwenn Ihr PHP-Code mit XML koexistieren muss, da XML diesen Tagging-Stil selbst verwenden kann. Wenn dies der Fall ist, schalten Sie diesen Stil in thephp.ini-Datei mit der Direktive theshort_open_tag. Eine andere Möglichkeit, PHPcode einzubetten, ist <?php und?,> tags:

<?php echo "Hello World"; ?>

Dieser Stil ist immer verfügbar und wird empfohlen, wenn Ihr PHP-Codenamen auf viele verschiedene Systeme portierbar ist., Einbetten von PHP in<script> – tags ist ein weiterer Stil, der isalways zur Verfügung:

<script language="php" > echo "Hello World";</script>

Eine Letzte Stil, mit dem code isbetween <% und %> – tags verwendet,ist standardmäßig deaktiviert:

<% echo "Hello World"; %>

Sie können drehen auf diesen Stil mit der asp_tagsdirective in Ihrer php.ini-Datei., Der Stil ist sehr nützlich, wenn Sie Microsoft FrontPage oder ein anderes HTMLauthoring-Tool verwenden, das diesen Tag-Stil für HTML-Embeddedscripts bevorzugt.

Sie können mehrere Anweisungen codieren, indem Sie sie mit Semikolons trennen:

<?php echo "Hello World"; echo "A second statement";?>

Es ist legal, jederzeit zwischen HTML undPHP hin und her zu wechseln., Wenn Sie beispielsweise 100<> tags für somereason ausgeben möchten, können Sie dies tun:

<?php for($i=0; $i<100; $i++) { ?> <br /><?php } ?>

Verwenden Sie natürlich str_repeat( ) funktion hier würde mehr Sinn machen.

Wenn Sie PHP-Code in eine HTML-Datei einbetten, müssen Sie die verwenden.php – Dateierweiterung für diese Datei, sodass Ihrwebserver weiß, dass die Datei zur Verarbeitung an PHP gesendet wird. Oder, wenn Sie Ihren Webserver so konfiguriert haben, dass er eine andere Erweiterung für PHPfiles verwendet, verwenden Sie stattdessen diese Erweiterung.,

Wenn Sie PHP-Code in eine HTML-Seite eingebettet haben, können Sie sich diese Seite als PHP-Programm vorstellen. Die Bits und Stücke von HTML und PHPcombine, um die Funktionalität des Programms. Eine Sammlung von Programmen, die Programme enthalten, kann als Webanwendung betrachtet werden.

16.2.1. Einschließlich von Dateien

Ein wichtiges Merkmal von PHP istseine Fähigkeit, Dateien einzuschließen. Diese Dateien können zusätzliche PHPtags enthalten. Wenn Sie eine Webanwendung entwerfen, können Sie ausbrechengemeinsame Komponenten und legen Sie sie in einer einzigen Datei ab., Dieser Schritt macht es viel einfacher, bestimmte Aspekte später an einem Ort zu ändern und die Änderung in der gesamten Anwendung wirksam werden zu lassen. Enthalten afile, verwenden Sie das includekeyword:

<?php $title="My Cool Web Application"; include "header.inc";?>

Der header.mit der inc-Datei könnte wie folgt Aussehen:

<html><head><title><?php echo $title?></title></head>

Dieses Beispiel zeigt zwei wichtige Konzepte der enthaltenen Dateien inPHP. Erstens sind Variablen, die in der Including-Datei festgelegt sind, automatischverfügbar in der Included-Datei., Zweitens startet jede enthaltene Datei im HTML-Modus. Mit anderen Worten, wenn Sie eine Datei einfügen möchten, die HASPP-Code enthält, müssen Sie diesen Code genauso einbetten wie jeden anderen PHP-Code.

Beachten Sie auch, dass ich die .inc-Erweiterung hier.Dies ist kein spezieller Dateityp, nur ein beliebiger Erweiterungsname Ichose. Da Ihr Apache-Server nicht für die Behandlung eingerichtet ist.inc-Dateien als PHP-Dateien, wenn Sie diese Datei irgendwo unter Ihrem document_root, Menschen canbrowse, um es und sehen Sie die PHP-Quelle in dieser Datei direkt. Dies ist normalerweise keine gute Idee, daher füge ich diese Zeilen myhttpd hinzu.,conf-Datei ein:

<Files ~ "\.inc$"> Order allow,deny Deny from all</Files>

Diese blockiert den direkten Zugriff auf .inc-Dateien. Theother option ist nicht gesetzt die Dateien underdocument_root, oder vielleicht zu benennen.php statt. Aber seien Sie vorsichtig mit diesem letzten Ansatz. Denken Sie daran, dass die Leute dann in der Lage sein werden, Thesescripts auszuführen, wenn sie wahrscheinlich nicht dazu bestimmt waren, in astandalone Mode ausgeführt zu werden.

Andere Möglichkeiten, Dateien einzuschließen, sind throughinclude_once, require, andrequire_once., Der Unterschied zwischeninclude und require ist einfachdass Sie mit include eine Warnung erhalten, wenn die einzuschließende Datei nicht vorhanden ist, während Sie mit require einen schwerwiegenden Fehler erhalten und die Skriptausführung stoppt. Theinclude_once und require_oncevariations stellen sicher, dass die enthaltene Datei nicht bereits enthalten ist. Dies hilft, Dinge wie Funktionsdefinitionserrors zu vermeiden.,

16. PHP 16.3. Language Syntax