PHP: Unterschied zwischen den Versionen

Aus Mediawiki Ferdinand Gruber
Zur Navigation springen Zur Suche springen
 
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 18: Zeile 18:
Die Installation kann mit YAST oder einem WEB Frontend erfolgen
Die Installation kann mit YAST oder einem WEB Frontend erfolgen
== Notizen ==
== Notizen ==
=== Spezielle Operatoren ===
==== Null-Koaleszenz-Operator ====
Der Null-Koaleszenz-Operator <tt>??</tt> liefert den linken Wert, wenn dieser existiert und nicht null ist. Andernfalls wird der rechte Wert verwendet.
$name = $benutzername ?? "Gast";
Vorteil: Kein Error, wenn $<tt>name</tt> nicht definiert ist.
=== Globale Variable ===
=== Globale Variable ===
<tt>global $varName;</tt> stellt die Verbindung zur globalen Variable <tt>$GLOBALS["varName"]</tt> her.  
Das Schlüsselwort <tt>global</tt> stellt die Verbindung zur globalen Variable her.  
Die Zuweisung erzeugt beziehungsweise initialisiert sie tatsächlich.
Die Zuweisung erzeugt beziehungsweise initialisiert die Variable tatsächlich.
# Beispiel
  global $auth;
  global $auth;
...
  $auth = new auth($this->authConfig);
  $auth = new auth($this->authConfig);
Durch die Zuweisung wird die globale Variable $GLOBALS["auth"] erzeugt.  
Durch die Zuweisung wird die globale Variable $GLOBALS["auth"] erzeugt.  
Zeile 29: Zeile 33:
Eine Callbackfunktion auf jedes Array Element anwenden
Eine Callbackfunktion auf jedes Array Element anwenden
  $newArray = array_map("function_name",$array);
  $newArray = array_map("function_name",$array);
=== Properties kapseln ===
Die Sichtbarkeit von Properties und Methoden wird festgelegt, indem man <tt>public, protected</tt> oder <tt>private</tt> der Deklaration voranstellt.
Wenn eine Property für die Implementierung der Klasse und ihrer Unterklassen gedacht ist, aber nicht Teil der öffentlichen Schnittstelle sein soll, verwendet man <tt>protected</tt>.
Propterties, die mit einer set_Methode geändert werden, können <tt>private</tt> oder <tt>protected</tt> sein.
# Beispiel
private $width
public function set_width($value) {
    if (! strPos($value,"px") && ! strPos($value,"%") )
        $value .= "px";
      $this->width = $value;
}
[https://www.php.net/manual/de/language.oop5.visibility.php Detailinformationen] in der PHP Dokumentation


== Dokumentation von PHP Projekten ==
== Dokumentation von PHP Projekten ==

Aktuelle Version vom 13. September 2026, 09:55 Uhr

Konfiguration

  • Änderungen an der Datei /etc/php5/apache2/php.ini

Um Fehlermeldungen von Joomla zu vermeiden:

date.timezone = CET

Sicherheit

register_globals = off
display_errors = Off
error_log = /var/log/apache2/php.log

Einbinden von Remote Scipten ermöglichen:

allow_url_include = On
allow_url_fopen = On

Funktioniert aber trotzdem mit Scripten auf Eduhi Server nicht!

PEAR

  • PHP Extension and Application Repository
Pear Website: http://pear.php.net/
  • Installation

Die Installation kann mit YAST oder einem WEB Frontend erfolgen

Notizen

Spezielle Operatoren

Null-Koaleszenz-Operator

Der Null-Koaleszenz-Operator ?? liefert den linken Wert, wenn dieser existiert und nicht null ist. Andernfalls wird der rechte Wert verwendet.

$name = $benutzername ?? "Gast";

Vorteil: Kein Error, wenn $name nicht definiert ist.

Globale Variable

Das Schlüsselwort global stellt die Verbindung zur globalen Variable her. Die Zuweisung erzeugt beziehungsweise initialisiert die Variable tatsächlich.

global $auth;
$auth = new auth($this->authConfig);

Durch die Zuweisung wird die globale Variable $GLOBALS["auth"] erzeugt.

Callback Funktion

Eine Callbackfunktion auf jedes Array Element anwenden

$newArray = array_map("function_name",$array);

Properties kapseln

Die Sichtbarkeit von Properties und Methoden wird festgelegt, indem man public, protected oder private der Deklaration voranstellt. Wenn eine Property für die Implementierung der Klasse und ihrer Unterklassen gedacht ist, aber nicht Teil der öffentlichen Schnittstelle sein soll, verwendet man protected.

Propterties, die mit einer set_Methode geändert werden, können private oder protected sein.

  1. Beispiel
private $width
public function set_width($value) {
    if (! strPos($value,"px") && ! strPos($value,"%") )
        $value .= "px";
     $this->width = $value;
}

Detailinformationen in der PHP Dokumentation

Dokumentation von PHP Projekten

Eine Dokumentation kann man erzeugen mit doxygen.

Dieses Programm scannt rekursiv alle PHP Dateien in einem Verzeichnis und erstellt eine HTML Datei. Variablendeklarationen und Funktionen werden automatisch erkannt und in der HTML Datei aufgelistet.
  • Installation mit YAST

Zusätzlich kann man die GUI doxygenwizard installieren. Das erleichtert die Konfiguration.

  • Konfiguration speichern
Doxyfile