![]() Mailinglisten-Archive |
>Hallo Liste, >gibt es zwischen Include und Require auch einen Geschwindigkeitsunterschied? >Und falls ja, welche der beiden M�glichkeiten ist dann schneller? >MfG >Uli Hi Uli, Der require()-Befehl setzt an seine Stelle den Inhalt der angegebenen Datei (�hnlich dem #include von C). Wichtig: PHP kehrt zu Beginn der per include() oder require() eingebundenen Dateien vom PHP- in den HTML-Modus und am Schlu� der Datei wieder vom HTML- in den PHP-Modus zur�ck. Falls innerhalb dieser Dateien also PHP-Code ausgef�hrt werden soll, muss dieser eingeschlossen werden von g�ltigen PHP-Start- und PHP-Ende-Marken . Require() ist keine PHP-Anweisung, sondern eine spezielle Sprachanweisung. Sie ist anderen Regeln unterworfen als Funktionen. Einerseits unterliegt sie keinen Kontroll-Srukturen, andererseits gibt sie keinen Wert zur�ck. Der Versuch, von einem require()-Aufruf einen R�ckgabewert zu erhalten, f�hrt zu einem Parse-Fehler. Anders als include() wird require() immer die angegebene Datei einlesen, auch dann, wenn die Programmzeile, in der sie steht, nicht ausgef�hrt wird. Wenn sie eine Datei nur bedingt einlesen wollen, benutzen sie include(). Die bedingte Anweisung w�rde require() nicht davon abhalten, die Datei zu laden. Innerhalb von Schleifen tritt der Effekt auf, dass, obwohl die den require()-Befehl enthaltende Zeile mehrfach angesprungen wird, die entsprechende Datei trotzdem nur genau einmal eingelesen (ausgef�hrt) wird. Sie k�nnen also require() nicht innerhalb von Programm-Schleifen einsetzen. Deshalb, und wenn sie verschiedene Dateien einlesen wollen, m�ssen sie in Schleifen den Befehl include() benutzen. Vom Einlesen selber gibts keinen Unterschied. Alles klar ? MFG Wolfgang
php::bar PHP Wiki - Listenarchive