PHP übergabe array an Funktion

Ich habe gesehen, ein paar Leute Fragen, eine ähnliche Frage. Aber ich brauche ein wenig mehr Klarheit in dieses Besondere Thema.

Habe ich mehrere Funktionen, die passieren mehrere Argumente. Ich habe sogar ein paar, die sind über 10 Argumente. (war anfangs nicht plan ist es, einfach wuchs im Laufe der Zeit)

Habe ich keine Probleme, an meinem Quell-code herauszufinden, was das 7. argument ist, aber ist es nicht langweilig. Die meisten der Zeit, ich weiß, welche Argumente übergeben werden, nur nicht die position.

Ich hatte ein paar Ideen, um den Prozess zu vereinfachen für mich.

a) pass 1 argument, aber teilen alles mit einigen Trennzeichen. (aber das ist eine schlechte Idee!, da ich noch an merken Sie sich die position der einzelnen.

function myfunc('data|data|data|'){
          //explode the string
}

b) übergeben Sie ein array mit Schlüssel und Werte, und suchen Sie nach der wichtigsten Namen innerhalb der Funktion, und entsprechend handeln.

function myfunc(array('arg1' => 'blah blah', 'arg2' => 'more blah')){
  //loop through the array
}

c) halten Sie es wie es ist.

function myfunc($arg1,$arg2,$arg3,$arg4,$arg5........){
//yay

}

So, ich bin auf der Suche nach anderen Optionen-und bessere Ideen für die Handhabung von Funktionen mit wachsendem argument Listen.

  • was sind das für Funktionen und was sind das für Argumente? wahrscheinlich ist es eine Folge von schlechter Bauart und Anzahl der Parameter deutlich reduziert werden.
  • Während es in der aktuellen Ausgabe die Frage ist absolut sinnlos und subjektiv.
  • Warum nicht umgestalten von code und teilen Sie Ihre Funktion in mehrere andere? Warum nicht verwenden Sie Objekte und geben Sie diese an andere Objekte? Mit etwa 10 Argumente sollte eine rote fahne, von schlechtem design.
Schreibe einen Kommentar