Forum und email

In dieser Dokumentation verwendete Pseudo-Typen

Mixed

Mixed deutet darauf hin, dass ein Parameter mehrere (aber nicht notwendigerweise alle) Typen akzeptiert.

gettype() akzeptiert beispielsweise alle PHP-Typen, während str_replace() Strings und Arrays akzeptiert.

Number

Number deutet darauf hin, dass ein Parameter entweder ein Integer oder ein Float sein kann.

Callback

Einige Funktionen wie call_user_func() oder usort() akzeptieren benutzerdefinierte Callback-Funktionen als Parameter. Callback-Funktionen können nicht nur einfache Funktionen sein, sondern auch Objektmethoden einschließlich statischer Klassenmethoden.

Eine PHP-Funktion wird einfach durch Ihren Namen als String übergeben. Sie können jede eingebaute oder benutzerdefinierte Funktion übergeben mit Ausnahme von array(), echo(), empty(), eval(), exit(), isset(), list(), print() und unset().

Eine Methode eines instanzierten Objekts wird als Array übergeben, das ein Objekt als Element mit Index 0 und einen Methodennamen als Element mit Index 1 enthält.

Statische Klassenmethoden können auch übergeben werden, ohne ein Objekt dieser Klasse zu instanzieren, indem statt des Objekts der Name der Klasse als Element mit Index 0 übergeben wird.

Example#1 Beispiele zur Callback-Funktion

<?php

// einfaches callback Beispiel
function meine_callback_funktion() {
    echo 
'hallo welt!';
}
call_user_func('meine_callback_funktion');

// Beispiele für Callbackmethoden
class MeineKlasse {
    function 
meineCallbackMethode() {
        echo 
'Hallo Welt!';
    }
}

// Aufruf einer statischen Klassenmethode ohne Instanzierung
// eines Objekts
call_user_func(array('MeineKlasse''meineCallbackMethode'));

// Aufruf einer Objektmethode
$obj = new MeineKlasse();
call_user_func(array(&$obj'meineCallbackMethode'));
?>