Benutzer-Werkzeuge

Webseiten-Werkzeuge


php:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
php:start [2015-03-09 08:43] – "CSS mit PHP generieren" eingefügt a.kamolaphp:start [2016-07-03 14:41] (aktuell) – "Importieren" mit "include() in Variable speichern" eingefügt a.kamola
Zeile 1: Zeile 1:
 ====== PHP ====== ====== PHP ======
 +
 +===== Hello World =====
 +
 +<code php helloworld.php>
 +<?php
 +echo "Hello World!\n";
 +?>
 +</code>
 +
 +[[https://github.com/akamola/helloworld/blob/master/helloworld.php|"Hello World"-Beispiel bei GitHub]]
 +
 +===== Eingebauter Webserver =====
 +
 +Ab der Version 5.4 verfügt PHP über einen eigenen Webserver, der mittels eines [[lexikon:terminal|Terminals]] gestartet werden kann:
 +
 +<code>
 +php -S localhost:8000 -t foo/public
 +</code>
 +
 +Mit dem Argument ''-S'' wird der Server initialisiert, dazu wird eine Adresse, meist ''localhost'', mit einem beliebigen Port, hier ''8000'', angegeben. Das Argument ''-t'' gibt das Verzeichnis an, dass als [[lexikon:documentroot|Document Root]] des Webservers funktionieren soll, relativ zu dem aktuellen Verzeichnis (hier ''foo/public'').
  
 ===== PHP-Shorttag ===== ===== PHP-Shorttag =====
Zeile 17: Zeile 37:
 </code> </code>
  
 +===== Strings =====
 +
 +In PHP gibt es zwei Arten Strings (Zeichenketten) in Anführungszeichen zu setzen: In doppelten oder einfachen Anführungszeichen. Der größte und wichtigste Unterschied zwischen diesen Anführungszeichen ist, dass Strings in doppelten Anführungszeichen vom Interpreter ausgewertet werden und Strings in einfachen Anführungszeichen nicht!
 +
 +Strings in einfachen Anführungszeichen werden behandelt wie sie sind und es gibt nur zwei Zeichen die Escaped werden können bzw. müssen: Das einfache Anführungszeichen, mittels ''\''', und das Backslash, mittels ''\\''.
 +
 +<code php>
 +echo '\'Hello\' World'; // Output: 'Hello' World
 +</code>
 +
 +Strings in doppelten Anführungszeichen werden interpretiert und bspw. Variablen durch ihre Werte ersetzt; zudem gibt es einige weitere Zeichen die Escaped werden müssen.
 +
 +<code php>
 +$foo = 42;
 +
 +echo "Foo is $foo"; // Output: Foo is 42
 +echo 'Foo is $foo'; // Output: Foo is $foo
 +</code>
 +
 +Es empfiehlt sich also Strings, die nicht interpretiert werden müssen, in einfache Anführungszeichen zu setzten. Desweiteren empfiehlt es sich, statt Strings und Variablen in doppelte Anführungszeichen zu setzen und diese interpretieren zu lassen, Strings und Variablen einzeln zu verketten, da dies weniger Arbeitsspeicher verbraucht!
 +
 +<code php>
 +$foo = 42;
 +
 +echo "Foo is $foo"; // More memory usage
 +echo 'Foo is ' . $foo; // Less memorg usage
 +</code>
 +
 +Quelle: [[http://techtalk.virendrachandak.com/php-double-quotes-vs-single-quotes/|Virendra's TechTalk: PHP Double Quotes vs. Single Quotes]]
 +
 +Darüber hinaus gibt es noch zwei andere Arten Strings in PHP zu definieren: in [[http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc|heredoc-]] und, seit PHP 5.3.0, [[http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.nowdoc|nowdoc-Syntax]].
 +
 +===== Importieren =====
 +
 +==== include() in Variable speichern ====
 +
 +<code php>
 +<?php
 +ob_start(); // Start buffer
 +
 +include('template.php'); // Load "template.php" into the buffer
 +$template = ob_get_contents(); // Save buffer into a variable
 +
 +ob_end_clean(); // End and clear buffer
 +
 +echo $template; // Print out the variable
 +?>
 +</code>
 +
 +===== Weiterleitung =====
 +
 +<code php redirect.php>
 +<?php
 +header('Location: http://example.com/');
 +exit();
 +?>
 +</code>
 +
 +==== Flexiblere Funktion ====
 +
 +<code php redirect.php>
 +<?php
 +function redirect( $url, $permanent = false ) {
 + header('Location: ' . $url, true, $permanent ? 301 : 302);
 + exit();
 +}
 +
 +redirect('http://example.com/', false);
 +?>
 +</code>
 +
 +Quelle: [[http://stackoverflow.com/a/768472|Stack Overflow: How to make a redirect in PHP?]]
 ===== CSS mit PHP generieren ===== ===== CSS mit PHP generieren =====
  
php/start.1425887002.txt.gz · Zuletzt geändert: 2015-03-09 08:43 von a.kamola