Extension:Loops/de

Die Loops-Erweiterung bietet, um Schleifen durchzuführen.

Aktuell ist die Version 1.0.0 in der Entwicklung und wird die, für Seiten mit zu vielen Schleifen und , um Rückschritte zu vermeiden, hinzufügen. Die Dokumentation unten zielt die aktuellste stabile Veröffentlichung, v0.5.2.

Aktuell wird diese Erweiterung auf einer Basisebene von MGChecker gewartet.

performs a loop (i.e. it repeatedly parses a given wiki markup block statement) so long as the condition mark-up evaluates to non-whitespace.


 * Beispiele:

Dieser Wiki-Markup:

ergibt folgendes:


 * 0
 * 1
 * 2
 * 3
 * 4

kann auch in einer Vorlage verwendet werden, um ein nummeriertes Array zu simulieren. Falls die Seite "Template:Loops Test" folgendes beinhaltet

Dann wird der Wiki-Markup

folgendes erzeugen:


 * null
 * eins
 * zwei
 * drei
 * four

It's important to note that whitespace, including newlines, tabs, and spaces, is stripped from the beginning and end of all the arguments of these parser functions. If this is not desirable, adding any non-whitespace characters (including the HTML encoding for a whitespace character ) will prevent further stripping (hence the  tags in the above examples).

performs exactly like, with the exception that the block statement is guaranteed to be parsed and displayed (if it results in displayable text) at least once. This is done before the condition text is evaluated.

repeatedly parses and displays &lt;wiki markup> a number of times equal to the absolute value of &lt;number of loops to be performed>. &lt;Starting value> is placed in a variable (accessible by extension's   parser function) using the name &lt;variable name>. After each loop, the variable is incremented by one if &lt;number of loops to be performed> is positive, or decremented by one if &lt;number of loops to be performed> is negative.

The following code:
 * Examples :

produces


 * This is round 4 and we have 3 more to go
 * This is round 5 and we have 2 more to go
 * This is round 6 and we have 1 more to go
 * This is round 7 and we have 0 more to go

( experimental )
is to be used in templates.

It takes arguments that are passed to the template and puts them in variables accessible by extension's   parser function.

This function iterates through each argument whose name begins with &lt;prefix>.

With each iteration it puts the argument name minus &lt;prefix> into &lt;key> as if calling.

It then takes the value of the argument and puts it into &lt;value> in a similar method.

The block statement is then expanded.

The block statement may contain  and   to access the stored arguments. If the page "Template:Loops Test" contains
 * Example

then the wiki markup

produces


 * 1 = val1
 * 5 = val5
 * ument = value

( experimental )
performs similarly to  with two major differences: It doesn't take a prefix argument, and it only works on numbered arguments whether they're explicitly numbered,

or implicitly numbered.

Mixing these methods in a single template call may cause values to get overwritten, so be careful.

If "Template:Loops Test" is edited to contain:
 * Examples

then

will result in


 * 1 = Apricot
 * 2 = Caramel slice
 * 5 = Eclair

Konfiguration
These configuration variables have to be set in the  file after the inclusion of this extension.


 * ( in the forthcoming 1.0.0 release )
 * This parameter sets the maximum number of loops a page is allowed to perform (default ). Setting it to   lets the loops run within the limits of phps environment. This parameter affects neither the   nor   parser functions.


 * Configuration variable (array) to define which Loops functions should be enabled. By default, all functions are enabled if the extension is installed as well. If the Variables extension is not installed, ,   and   will be disabled since they do not work without it being installed. To enable the   and   functions only, one can use:
 * Configuration variable (array) to define which Loops functions should be enabled. By default, all functions are enabled if the extension is installed as well. If the Variables extension is not installed, ,   and   will be disabled since they do not work without it being installed. To enable the   and   functions only, one can use:

Siehe auch

 * - Another extension for loops
 * Module:Loops