Ich möchte eine Funktion ähnlich wie „join“ (ein Alias von „implode“) kapseln. Der Code lautet wie folgt:
<code><?php #封装函数:join $arr = array('jack','male',23); function getJoin($glue="",$arr){ $str =""; foreach ($arr as $key => $value) { $str .= $value.$glue; } $str = substr($str, 0,-1); return $str; } echo getJoin(",",$arr);</code>
So geschrieben sieht es ähnlich aus wie der Systemfunktions-Join, aber wenn der $glue-Parameter beim Aufruf nicht ausgefüllt wird, wird ein Fehler gemeldet.
Ich weiß, dass Parameter mit Standardwerten am Ende platziert werden sollten, z. B. getJoin($arr,$glue="")
, damit Sie beim Aufruf nur den Parameter $arr ausfüllen können, aber ich habe das Handbuch und den Parameterwert von gelesen Die Systemfunktion Join sieht so aus:
Das Fehlen eckiger Klammern weist darauf hin, dass der Parameter nicht weggelassen werden kann. Gleichzeitig wird auch die Schreibmethode zum Ausfüllen nur eines Parameters unterstützt und standardmäßig die leere Zeichenfolge als Wert von $glue verwendet. Obwohl die Erklärung historischer Natur ist, möchte ich dennoch wissen, wie die Systemfunktion implementiert wird.
Ich möchte eine Funktion ähnlich wie „join“ (ein Alias von „implode“) kapseln. Der Code lautet wie folgt:
<code><?php #封装函数:join $arr = array('jack','male',23); function getJoin($glue="",$arr){ $str =""; foreach ($arr as $key => $value) { $str .= $value.$glue; } $str = substr($str, 0,-1); return $str; } echo getJoin(",",$arr);</code>
So geschrieben sieht es ähnlich aus wie der Systemfunktions-Join, aber wenn der $glue-Parameter beim Aufruf nicht ausgefüllt wird, wird ein Fehler gemeldet.
Ich weiß, dass Parameter mit Standardwerten am Ende platziert werden sollten, z. B. getJoin($arr,$glue="")
, damit Sie beim Aufruf nur den Parameter $arr ausfüllen können, aber ich habe das Handbuch und den Parameterwert von gelesen Die Systemfunktion Join sieht so aus:
Das Fehlen eckiger Klammern weist darauf hin, dass der Parameter nicht weggelassen werden kann. Gleichzeitig wird auch die Schreibmethode zum Ausfüllen nur eines Parameters unterstützt und standardmäßig die leere Zeichenfolge als Wert von $glue verwendet. Obwohl die Erklärung historischer Natur ist, möchte ich dennoch wissen, wie die Systemfunktion implementiert wird.
Funktionsüberlastung. . .
http://m.blog.csdn.net/articl...
Wenn Sie diesen Effekt erzielen müssen, können Sie die PHP-Methode zur Deklaration variabler Parameternummern verwenden. Siehe
http://php.net/manual/zh/func...
Laden Sie die Parameter in ein Array ein und verarbeiten Sie sie durch Analysieren des Arrays.