[php] Functie uit string uitvoeren

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik wil hetvolgende doen, ik wil uit een database veld een functie naam halen en deze dan uit laten voeren.

Bijvoorbeeld

function VoorbeeldFunctie(){
echo "test";
}

$FunctieString = "VoorbeeldFunctie()";

en dan moet het uitgevoerd worden, in VBa heb je zoiets als

execute($FunctieString);

Dit heb ik bij PHP nog niet kunnen vinden, iemand een idee?

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-09 08:50

gorgi_19

Kruimeltjes zijn weer op :9

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Mwa de omschrijving komt wel in de buurt van wat ik bedoel, waarom vind ik dit dan niet als ik de search gebruik?!?!? Zal wel de vrijdagmiddag zijn.

Acties:
  • 0 Henk 'm!

  • Cipri
  • Registratie: Januari 2001
  • Laatst online: 29-07-2024

Cipri

Of niet natuurlijk...

PHP:
1
2
3
4
5
6
7
8
function doIt()
{
    return 1/0;
}


$funcName = "doIt";
$$funcName();


Werkt prima *D

-=[ Murlocs Ate My Boots]=- Sylvanas Alliance - EU - Orosei lvl 100 Paladin


Acties:
  • 0 Henk 'm!

Verwijderd

Ik zou $FunctieString met VoorbeeldFunctie vullen, en hem dan zo aanroepen:

PHP:
1
2
$FunctieString = 'VoorbeeldFunctie';
{$FunctieString}();


Edit: net te laat ;)

[ Voor 12% gewijzigd door Verwijderd op 13-02-2004 16:51 . Reden: BTW ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dan kun je natuurlijk nog wel bespreken wat de beste manier is

eval of $$functie

Want beide methoden werken alleen welke is dan de beste?

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-09 08:50

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 13 februari 2004 @ 16:52:
Dan kun je natuurlijk nog wel bespreken wat de beste manier is

eval of $$functie

Want beide methoden werken alleen welke is dan de beste?
Imho geen van twee; het gebruik van eval vind ik ranzig. De reden: imho hoort een user geen code in te voeren, levert een risico op, geen controle over de code en je hebt goede parser patterns.

Digitaal onderwijsmateriaal, leermateriaal voor hbo

Pagina: 1