Jump to content
Sign in to follow this  
Mads-b

[løst] Utfordring: flere metodeparametre i en streng

Recommended Posts

Heisann!

Jeg har et problem (obviously). Som er som følger.

Jeg har en streng s="arg1,arg2,arg3,...."

Jeg har en metode m(), som tar inn et fritt antall parametre. Problemet er at m(s); oppfattes av metoden som ett parameter. Oppbygningen av strengen kan ikke endres. Hvordan kan jeg preprossessere strengen for å mate m() med et fritt antall parametre? Husk at antall parametre varierer..

Edited by Mads-b

Share this post


Link to post

Tror ikke du forstår problemet. Det er ikke SÅ low-level. Et tross alt noen tusen kodelinjer inne i et CMS.

 

Eksempel:

Jeg har fått tak i strengen s="'n',1234567"

 

Jeg vil kjøre den gjennom en metode, i dette tilfellet, date.

Skriver vi date('n',1234567); fungerer alt flawless.

Skriver vi date(s); tolker den s som en streng (naturligvis).

 

Jeg kan gjøre:

a=explode(',',s);
date(s[0],s[1]);

Fungerer også perfekt. Men i mitt tilfelle varierer antall parametre! (Det er ikke alltid date() det er snakk om. Funksjonen som brukes varierer også) Det er stygt å hardkode inn hvert tilfelle.

 

Det optimale hadde vært om jeg kunne sendt parametrene som en array, men jeg skal sende de til ferdiglagede PHP-funksjoner.

Edited by Mads-b

Share this post


Link to post

Ah! Nevermind! Løste problemet lenger opp i koden.

 

brukte call_user_func_array i stedet for call_user_func. Da kan jeg passe argumentene som array!

 

Ja, jeg er klar over at dette er en enorm sikkerhetsrisiko hvis brukt feil..

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...