Pomoc:Funkcje parsera: Różnice pomiędzy wersjami

Z Nonsensopedii, polskiej encyklopedii humoru
M (es)
M
Linia 1: Linia 1:
===Czym są funkcje parsera?===
Funkcje parsera są małymi rozszerzeniami mechanizmu MediaWiki, dającymi różne wyniki przy zastosowaniu różnych argumentów. Najlepsze użycie znajdują w skomplikowanych [[:kategoria:Szablony|szablonach]].
Funkcje parsera są małymi rozszerzeniami mechanizmu MediaWiki, dającymi różne wyniki przy zastosowaniu różnych argumentów. Najlepsze użycie znajdują w skomplikowanych [[:kategoria:Szablony|szablonach]].
===Funkcje===
==Funkcje==
====if====
===if===
Funkcja, która może wyświetlać różne wyniki w zależności od tego, czy podany parametr jest pusty lub nie.
Funkcja, która może wyświetlać różne wyniki w zależności od tego, czy podany parametr jest pusty lub nie.


Linia 8: Linia 7:


Przykładowo: załóżmy, że szablon o treści podanej wyżej znajduje się pod nazwą [[szablon:parametr]]. Jeśli użyjemy szablonu w ten sposób: <pre>{{parametr|parametr=blablabla}}</pre>wtedy powinien zostać wyświetlony tekst: ''"Parametr nie jest pusty."'' Jeśli użyjemy go w ten sposób:<pre>{{parametr|blablabla}}</pre> lub na przykład tak: <pre>{{parametr}}</pre>zostanie wyświetlony tekst: ''"Parametr jest pusty."''
Przykładowo: załóżmy, że szablon o treści podanej wyżej znajduje się pod nazwą [[szablon:parametr]]. Jeśli użyjemy szablonu w ten sposób: <pre>{{parametr|parametr=blablabla}}</pre>wtedy powinien zostać wyświetlony tekst: ''"Parametr nie jest pusty."'' Jeśli użyjemy go w ten sposób:<pre>{{parametr|blablabla}}</pre> lub na przykład tak: <pre>{{parametr}}</pre>zostanie wyświetlony tekst: ''"Parametr jest pusty."''
====ifeq====
===ifeq===
Funkcja, która porównuje ze sobą dwie wartości i wyświetla wynik.
Funkcja, która porównuje ze sobą dwie wartości i wyświetla wynik.


Linia 14: Linia 13:


Załóżmy, że szablon o powyższej treści znajduje się pod nazwą [[szablon:żelki]]. Jeśli użyjemy szablonu w ten sposób:<pre>{{żelki|kochanie=tak}}</pre>wtedy wyświetli się tekst ''"Kocham żelki!"'' Jeśli szablon będzie użyty w sposób<pre>{{żelki|kochanie=nie}}</pre> lub w jakikolwiek inny sposób, na przykład <pre>{{żelki}}</pre>zostanie wyświetlony tekst: ''"Nie lubię żelek."''
Załóżmy, że szablon o powyższej treści znajduje się pod nazwą [[szablon:żelki]]. Jeśli użyjemy szablonu w ten sposób:<pre>{{żelki|kochanie=tak}}</pre>wtedy wyświetli się tekst ''"Kocham żelki!"'' Jeśli szablon będzie użyty w sposób<pre>{{żelki|kochanie=nie}}</pre> lub w jakikolwiek inny sposób, na przykład <pre>{{żelki}}</pre>zostanie wyświetlony tekst: ''"Nie lubię żelek."''
====ifexist====
===ifexist===
Funkcja ifexist sprawdza, czy artykuł o podanej nazwie istnieje i wyświetla wynik. Zazwyczaj przyjmuje postać:<pre>{{#ifexist:kot|Artykuł [[kot]] istnieje.|Artykuł [[kot]] nie istnieje.}}</pre>Oznacza to: jeśli artykuł "kot" istnieje, wtedy wyświetl: ''"Artykuł [[kot]] istnieje."'' Jeśli nie istnieje wtedy wyświetl: ''"Artykuł [[kot]] nie istnieje."'' (artykuł [[kot]] w tym wypadku istnieje).
Funkcja ifexist sprawdza, czy artykuł o podanej nazwie istnieje i wyświetla wynik. Zazwyczaj przyjmuje postać:<pre>{{#ifexist:kot|Artykuł [[kot]] istnieje.|Artykuł [[kot]] nie istnieje.}}</pre>Oznacza to: jeśli artykuł "kot" istnieje, wtedy wyświetl: ''"Artykuł [[kot]] istnieje."'' Jeśli nie istnieje wtedy wyświetl: ''"Artykuł [[kot]] nie istnieje."'' (artykuł [[kot]] w tym wypadku istnieje).


Funkcja może mieć również nieco bardziej skomplikowaną postać:<pre>{{#ifexist:{{{1}}}|Artykuł [[{{{1}}}]] istnieje.|Artykuł [[{{{1}}}]] nie istnieje.}}</pre>Załóżmy, że szablon o powyższej treści znajduje się pod nazwą [[szablon:istnieje]]. Jeśli użyjemy go w ten sposób:<pre>{{istnieje|kot}}</pre>wtedy sprawdzi, czy artykuł kot istnieje i w zależności od tego wyświetli wynik.
Funkcja może mieć również nieco bardziej skomplikowaną postać:<pre>{{#ifexist:{{{1}}}|Artykuł [[{{{1}}}]] istnieje.|Artykuł [[{{{1}}}]] nie istnieje.}}</pre>Załóżmy, że szablon o powyższej treści znajduje się pod nazwą [[szablon:istnieje]]. Jeśli użyjemy go w ten sposób:<pre>{{istnieje|kot}}</pre>wtedy sprawdzi, czy artykuł kot istnieje i w zależności od tego wyświetli wynik.
====switch====
===switch===
Funkcja porównuje jedną wartość z innymi i jeśli znajdzie taką samą wartość wyświetla wynik. W innym wypadku wyświetla wartość domyślną (jeżeli takowa została podana). Przykład:<pre>{{#switch:{{{miesiąc}}}
Funkcja porównuje jedną wartość z innymi i jeśli znajdzie taką samą wartość wyświetla wynik. W innym wypadku wyświetla wartość domyślną (jeżeli takowa została podana). Przykład:<pre>{{#switch:{{{miesiąc}}}
|1=styczeń
|1=styczeń
Linia 34: Linia 33:
|nie podano miesiąca
|nie podano miesiąca
}}</pre>Przyjmijmy, że szablon o powyższej treści znajduje się pod nazwą [[szablon:miesiąc]]. Jeśli zostanie użyty w ten sposób:<pre>{{miesiąc|miesiąc=1}}</pre>wtedy funkcja wyświetli ''"styczeń"''. W przypadku<pre>{{miesiąc}}</pre>zostanie wyświetlony tekst "''nie podano miesiąca''".
}}</pre>Przyjmijmy, że szablon o powyższej treści znajduje się pod nazwą [[szablon:miesiąc]]. Jeśli zostanie użyty w ten sposób:<pre>{{miesiąc|miesiąc=1}}</pre>wtedy funkcja wyświetli ''"styczeń"''. W przypadku<pre>{{miesiąc}}</pre>zostanie wyświetlony tekst "''nie podano miesiąca''".
====expr====
===expr===
Funkcja oblicza wyrażenia matematyczne. Na przykład<pre>{{#expr:1+1}}</pre> da w wyniku "''2''".
Funkcja oblicza wyrażenia matematyczne. Na przykład<pre>{{#expr:1+1}}</pre> da w wyniku "''2''".
=====Tabela używanych operatorów=====
=====Tabela używanych operatorów=====
Linia 113: Linia 112:




====ifexpr====
===ifexpr===
Funkcja wykonuje wyrażenie matematyczne i wyświetla tekst, który jest zależny od wyniku. Przykład:<pre>{{#ifexpr:1+1|1+1 nie jest równe 0.|1+1 równa się 0.}}</pre>Oznacza to: jeśli wynik podanego działania (w tym wypadku <tt>1+1</tt>) jest równy 0, wtedy funkcja wyświetli ''"1+1 równa się 0."'', a jeśli wynik nie jest równy zeru, wtedy zostanie wyświetlony tekst ''"1+1 nie jest równe 0."'' Funkcja obsługuje te same operatory co <tt>expr</tt>.
Funkcja wykonuje wyrażenie matematyczne i wyświetla tekst, który jest zależny od wyniku. Przykład:<pre>{{#ifexpr:1+1|1+1 nie jest równe 0.|1+1 równa się 0.}}</pre>Oznacza to: jeśli wynik podanego działania (w tym wypadku <tt>1+1</tt>) jest równy 0, wtedy funkcja wyświetli ''"1+1 równa się 0."'', a jeśli wynik nie jest równy zeru, wtedy zostanie wyświetlony tekst ''"1+1 nie jest równe 0."'' Funkcja obsługuje te same operatory co <tt>expr</tt>.



Wersja z 16:48, 2 gru 2007

Funkcje parsera są małymi rozszerzeniami mechanizmu MediaWiki, dającymi różne wyniki przy zastosowaniu różnych argumentów. Najlepsze użycie znajdują w skomplikowanych szablonach.

Funkcje

if

Funkcja, która może wyświetlać różne wyniki w zależności od tego, czy podany parametr jest pusty lub nie.

Funkcja if zazwyczaj przyjmuje postać:

{{#if:{{{parametr|}}}|Parametr nie jest pusty.|Parametr jest pusty.}}

Oznacza to: jeśli parametr nie jest pusty, wtedy wyświetl "Parametr nie jest pusty.", a jeśli jest pusty, wtedy wyświetl "Parametr jest pusty." Przykładowo: załóżmy, że szablon o treści podanej wyżej znajduje się pod nazwą szablon:parametr. Jeśli użyjemy szablonu w ten sposób:

{{parametr|parametr=blablabla}}

wtedy powinien zostać wyświetlony tekst: "Parametr nie jest pusty." Jeśli użyjemy go w ten sposób:

{{parametr|blablabla}}

lub na przykład tak:

{{parametr}}

zostanie wyświetlony tekst: "Parametr jest pusty."

ifeq

Funkcja, która porównuje ze sobą dwie wartości i wyświetla wynik.

Funkcja ifeq zazwyczaj przyjmuje postać:

{{#ifeq:{{{kochanie}}}|tak|Kocham żelki!|Nie lubię żelek.}}

Oznacza to: jeśli kochanie jest równe tak, wtedy wyświetl tekst "Kocham żelki!"; jeśli kochanie jest różne od tak, wtedy wyświetl tekst "Nie lubię żelek." Załóżmy, że szablon o powyższej treści znajduje się pod nazwą szablon:żelki. Jeśli użyjemy szablonu w ten sposób:

{{żelki|kochanie=tak}}

wtedy wyświetli się tekst "Kocham żelki!" Jeśli szablon będzie użyty w sposób

{{żelki|kochanie=nie}}

lub w jakikolwiek inny sposób, na przykład

{{żelki}}

zostanie wyświetlony tekst: "Nie lubię żelek."

ifexist

Funkcja ifexist sprawdza, czy artykuł o podanej nazwie istnieje i wyświetla wynik. Zazwyczaj przyjmuje postać:

{{#ifexist:kot|Artykuł [[kot]] istnieje.|Artykuł [[kot]] nie istnieje.}}

Oznacza to: jeśli artykuł "kot" istnieje, wtedy wyświetl: "Artykuł kot istnieje." Jeśli nie istnieje wtedy wyświetl: "Artykuł kot nie istnieje." (artykuł kot w tym wypadku istnieje). Funkcja może mieć również nieco bardziej skomplikowaną postać:

{{#ifexist:{{{1}}}|Artykuł [[{{{1}}}]] istnieje.|Artykuł [[{{{1}}}]] nie istnieje.}}

Załóżmy, że szablon o powyższej treści znajduje się pod nazwą szablon:istnieje. Jeśli użyjemy go w ten sposób:

{{istnieje|kot}}

wtedy sprawdzi, czy artykuł kot istnieje i w zależności od tego wyświetli wynik.

switch

Funkcja porównuje jedną wartość z innymi i jeśli znajdzie taką samą wartość wyświetla wynik. W innym wypadku wyświetla wartość domyślną (jeżeli takowa została podana). Przykład:

{{#switch:{{{miesiąc}}}
|1=styczeń
|2=luty
|3=marzec
|4=kwiecień
|5=maj
|6=czerwiec
|7=lipiec
|8=sierpień
|9=wrzesień
|10=październik
|11=listopad
|12=grudzień
|nie podano miesiąca
}}

Przyjmijmy, że szablon o powyższej treści znajduje się pod nazwą szablon:miesiąc. Jeśli zostanie użyty w ten sposób:

{{miesiąc|miesiąc=1}}

wtedy funkcja wyświetli "styczeń". W przypadku

{{miesiąc}}

zostanie wyświetlony tekst "nie podano miesiąca".

expr

Funkcja oblicza wyrażenia matematyczne. Na przykład

{{#expr:1+1}}

da w wyniku "2".

Tabela używanych operatorów
Operator Operacja matematyczna Przykład
+ Dodawanie {{#expr: 30 + 7}} = 37
- Odejmowanie {{#expr: 30 - 7}} = 23
* Mnożenie {{#expr: 30 * 7}} = 210
/ lub div Dzielenie {{#expr: 30 / 7}} = 4.2857142857143
round Zaokrąglanie do pewnej liczby miejsc po przecinku, podawanej za tym operatorem {{#expr: 30 / 7 round 5}} = 4.28571
mod Dzielenie modulo (reszta z dzielenia) {{#expr: 30 mod 7}} = 2
Operatory logiczne ("1" - prawda, "0" - fałsz)
= Równa się {{#expr: 30 = 7}} = 0
<> lub != Nie równa się (jest większe lub mniejsze) {{#expr: 30 <> 7}} = 1
< Mniejsze niż {{#expr: 30 < 7}} = 0
> Większe niż {{#expr: 30 > 7}} = 1
<= Mniejsze lub równe {{#expr: 30 <= 7}} = 0
>= Większe lub równe {{#expr: 30 >= 7}} = 1
and Logiczne i {{#expr: 30 and 7}} = 1
or Logiczne lub {{#expr: 30 or 7}} = 1
not logiczne nie {{#expr: not 7}} = 0
Specjalne
( ) Grupowanie {{#expr: (30 + 7) * 5 }} = 185

UWAGA! Łącznikiem dziesiętnym liczb jest "." kropka (półtora=1.5).


ifexpr

Funkcja wykonuje wyrażenie matematyczne i wyświetla tekst, który jest zależny od wyniku. Przykład:

{{#ifexpr:1+1|1+1 nie jest równe 0.|1+1 równa się 0.}}

Oznacza to: jeśli wynik podanego działania (w tym wypadku 1+1) jest równy 0, wtedy funkcja wyświetli "1+1 równa się 0.", a jeśli wynik nie jest równy zeru, wtedy zostanie wyświetlony tekst "1+1 nie jest równe 0." Funkcja obsługuje te same operatory co expr.

Więcej o funkcjach parsera można przeczytać w Wikipedii.

Ta strona zawiera treści z Wikipedii. Oryginalny artykuł był umieszczony pod nazwą Wikipedia:Funkcje parsera. Lista autorów jest dostępna w historii strony. Tekst z Wikipedii jest udostępniony na licencji Creative Commons: uznanie autorstwa, na tych samych warunkach.