funktion aufrufen argumenten/anzahl durch kontrollstruktur
carsten schlichting
- php
Hallo
wollte fragen, ob mir jemand in PHP weiterhelfen kann?
und zwar möchte ich gerade herausfinden, wie ich eine funktion aufrufen kann, deren zu übergebende Argumente erst durch eine weitere Programmlogik im Verlauf des scriptes bestimmt werden.
also so:
function bsp([PHP_kontrollstrukturen geben unterschiedliche anzahl von Variablen aus]){
$num = func_num_args();
$arg_list = func_get_args();
}
wie könnte man hier vorgehen und welchen syntax benutzen?
habt vielen dank und viele Grüße
carsten schlichting
Hi,
wollte fragen, ob mir jemand in PHP weiterhelfen kann?
don't ask to ask. Just ask.
und zwar möchte ich gerade herausfinden, wie ich eine funktion aufrufen kann, deren zu übergebende Argumente erst durch eine weitere Programmlogik im Verlauf des scriptes bestimmt werden.
Redest Du von optionalen Parametern? Dann kannst Du diesen einen Default-Wert zuweisen. Falls Du völlig unterschiedliche Schnittstellen meinst: Das ist ganz schlechtes Kung Fu.
Cheatah
Redest Du von optionalen Parametern? Dann kannst Du diesen einen Default-Wert zuweisen. Falls Du völlig unterschiedliche Schnittstellen meinst: Das ist ganz schlechtes Kung Fu.
Hi
ich mein nicht die optionalen parameter, die habe ich schon durchgearbeitet.
...Sondern wohl das, was du mit schnittstelle meinst.
möchte die funktion aufrufen und dann die Anzahl und werte der parameter durch code bestimmen.
kann ich auch einen array in einem Parameter übergeben?, und dann so das Problem lösen??
wahrscheinlich schon- oder?
würdest du da auch so rangehen?
Grüße carsten
Hi,
möchte die funktion aufrufen und dann die Anzahl und werte der parameter durch code bestimmen.
und die sollen jeweils unterschiedliche Bedeutungen haben? Schlechtes Kung Fu.
kann ich auch einen array in einem Parameter übergeben?
Ja. Du solltest aber vor allem das Konzept überdenken. Die Schnittstelle ist auf diese Weise schnell dermaßen aufgeweicht, dass sie nicht mehr praktisch nutzbar ist. Anders als bei z.B. Java ist die Bedeutung der unterschiedlichen Parameter nämlich nicht mehr von außen ersichtlich.
würdest du da auch so rangehen?
Ich würde zusehen, dass ich eine klare Schnittstelle definiert bekomme.
Cheatah
hallo
sag mal kann man eigentlich auch func_num_args()
folgendermaßen benutzen....
oder ich habe es auch schon ausprobiert, funktioniert aber nicht.
$a = array(3,5,7 )
function bsp()
{
$array=func_num_args()
echo $array[0][0].'<br>'.$array[0][1].'<br>'.$array[0][2].'<br>';
}
bsp($a);
???
grüße
carsten
$array=func_num_args()
muß natürlich func_get_args() heißen.
habe ich verwechselt
jetzt funktioniert es
grüße
carsten