PHP optionale Funktion Argumente mit Array. Wie man programmiert / Bessere Art zu programmieren?

7

Ich bin mir sicher, dass es ein besseres gibt. Jede Hilfe wird sehr geschätzt.

Ich möchte ein Array an eine PHP-Funktion übergeben, die das Argument enthält und alle Argumente sind optional. Ich benutze Code-Ignitor und bin keineswegs ein Experte. Unten ist was ich bisher benutzt habe:

%Vor%     
Ross 25.09.2009, 11:49
quelle

7 Antworten

10

Du könntest es so machen:

%Vor%

Bearbeiten Sie einfach das Array $ fields mit Ihrem Schlüssel und seinem Standardwert.

    
Inspire 25.09.2009, 12:03
quelle
27

Sie können ein Array von Standardwerten verwenden und dann das Argumentarray mit den Standardwerten zusammenführen. Die Standardwerte werden überschrieben, wenn sie im Argument-Array angezeigt werden. Ein einfaches Beispiel:

%Vor%

In Ihrem Fall wäre das:

%Vor%     
Ionuț G. Stan 25.09.2009 12:05
quelle
4

Die Verwendung des Arrays als Argument ist in diesem Fall eine gute Idee. Sie könnten jedoch den Code in der Funktion etwas vereinfachen, indem Sie den ternären Operator ( Ссылка ) verwenden:

$ title = isset ($ postDetailArray ['titel'])? $ postDetailArray ['title']: 'Fehler: Kein Titel';

Sie könnten es noch mehr vereinfachen, indem Sie Folgendes tun:

%Vor%

}

    
Jonas 25.09.2009 11:58
quelle
0

Ich denke, dass das Beispiel in Ordnung ist. Ich glaube nicht, dass hier viel mehr Optimierungen gemacht werden müssen, außer vielleicht einige Klammern wegzulassen.

Optional können Sie die Extraktionsfunktion in PHP überprüfen

    
dusoft 25.09.2009 11:58
quelle
0

Versuchen Sie Folgendes:

%Vor%     
Andreas 25.09.2009 12:01
quelle
0

Sie könnten alle Elemente der Array-Parameter der Funktion machen. Überprüfen Sie, ob das erste ein Array in der Funktion ist, und wenn dies der Fall ist, extrahieren Sie das Array.

%Vor%

Vielleicht macht das den Code ein wenig klarer.

    
smack0007 25.09.2009 12:03
quelle
0

Wie wäre es mit:

%Vor%

oder alternativ:

%Vor%

Mit der einen Warnung, dass, wenn Sie einen Array-Schlüssel von 'defaults' in $defaults haben, wird das globale $defaults überschrieben.

    
cletus 25.09.2009 11:58
quelle

Tags und Links