Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Dynamische PHP Funktionen aufrufen?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Curcio
    hat ein Thema erstellt [Erledigt] Dynamische PHP Funktionen aufrufen?.

    [Erledigt] Dynamische PHP Funktionen aufrufen?

    Hallo,
    kann man PHP Funktionen "dynamisch" aufrufen?

    Beispiel: Eine PHP Funktion bekommt einen String Parameter "intval" und ruft dann die Funktion intval() auf.

    Ich kenne aktuell nur eine Lösung, wenn die Methoden alle festgelegt wurden bzw. bekannt sind. Dann könnte man ja mit switch oder if darauf zugreifen.

    Doch wird bei array_map() in der Callbackangabe doch sicherlich in der Funktion nicht jede PHP Funktion enthalten sein?

    (Ich möchte es nicht anwenden, mich würde es nur interessieren ob sowas in PHP funktioniert)

  • Flor1an
    antwortet
    Wenn du einen Funktionsnamen in einer Variable hast kannst du die Funktion auch ganz einfach aufrufen:

    PHP-Code:
    $func 'intval';
    $wert "15.5";
    echo 
    $func($wert); 
    ist das selbe wie "intval($wert)".

    Für sowas wie oben genannt musst du also nicht unbedingt call_user_func nutzen.

    Einen Kommentar schreiben:


  • Curcio
    antwortet
    Hallo Frank,

    vielen Dank.

    In der Doku hab ich gleich eine weitere Interessante Sache entdeckt, welche zu diesem Thema passt:

    Code:
    call_user_func  (  string $function_name  [,  mixed $parameter  [,  mixed $...  ]] )
    Scheinbar kann man hier unbegrenzte Parameter übergeben. Gibt es da auch eine Möglichkeit dies zu realisieren, ohne die ganzen potentiellen Parameter festzulegen?

    EDIT:
    Habs gefunden sry

    http://de.php.net/manual/de/function.func-get-args.php

    Einen Kommentar schreiben:


  • Frank
    antwortet
    Ja sowas gibt es
    [MAN]call_user_func[/MAN]
    [MAN]call_user_func_array[/MAN]

    Einen Kommentar schreiben:

Lädt...
X