K wobsahej skočić

Pomoc:Pśedłogowe programowanje

Z Wikipedije
Pomoc

Wót srjejźiny apryla 2006 ma k dispoziciji Wiki-syntaks mediawikinego softwara wšelake konstrukty programoweje rěcy za wužywanje we pśedłogach.

Rěcne kostrukty by se małe wužywaś jano we pśedłogowem mjenjowym rumje.

Wopisanja ParserFunctions

[wobźěłaś | žrědłowy tekst wobźěłaś]

Aktualnje su funkciji if, ifeq, ifexist, expr, ifexpr, switch, time a rel2abs.

Funkcija if jo gaž-pótom-howacej-owy konstrukt. Syntaksa jo:

{{#if: <wuměnjenje> | <pótomowy tekst> | <howacejowy tekst> }}
{{ #if:  {{{parameter|}}} | Parameter jo definěrowany. | Parameter njejo definěrowany, abo prozny  }}

Gaž (wariabla za) <wuměnjenje> eksistěrujo a wopśimjejo tekst, pótom software da pokazaś <pótomowy tekst>. Gaž njeeksistětrujo (wariabla za) <wuměnjenje>, wóna jo prozna abo wopśimjejo jano prozna znamjenja, pótom software da pokazaś <howacejowy tekst>. <howacejowy tekst> teke móžo felowaś, pótom software da pokazaś nic.

Glědajśo: if njefunkcioněrujo z rownicami. Glědaj za to ifeq a ifexpr.

ifeq pśirowna dwa slědaj ze někotarych znamjenjow a wrośi wšelake teksty.

{{#ifeq: <tekst 1> | <tekst 2> | <tekst gaž samske> | <tekst gaž njesamske> }}

ifexist testujo, lěc lemma eksistěrujo, a wrośi wšelake teksty.

{{#ifexist: <lemma> | <tekst gaž lemma eksistěrujo> | <tekst gaž lemma njeeksistěrujo> }}

Glědajśo: Interwikine linki njebu testowane.

expr wulicy matematiske wurazy.

{{ #expr: <wuraz> }}
operator operacija pśikład
* multiplikacija {{#expr: 30 * 7}} = 210
/ abo div diwidowanje {{#expr: 30 / 7}} = 4.2857142857143
+ adicija {{#expr: 30+7}} = 37
- subtrakcija {{#expr: 30 - 7}} = 23
mod modulo, zbytk diwidowanja {{#expr: 30 mod 7}} = 2
round {{#expr: 30 / 7 round 7}} = 4.2857143
= rownosć {{#expr: 30 = 7}} = 0
<> abo != njerownosć {{#expr: 30 <> 7}} = 1
< mjenjej ako {{#expr: 30 < 7}} = 0
> wěcej ako {{#expr: 30 > 7}} = 1
<= mjenjej abo rownje {{#expr: 30 <= 7}} = 0
>= wěcej abo rownje {{#expr: 30 >= 7}} = 1
and logiske A (Nimski: UND) {{#expr: 30 and 7}} = 1
or logiske ABO (Nimski: ODER) {{#expr: 30 or 7}} = 1
not logiske NIC (Nimski: NICHT) {{#expr: not 7}} = 0
( ) grupěrowanje {{#expr: (30 + 7) *7}} = 259

Boolske operatory wobjadnawaja 0 (nul) kaž njewěrny a 1 kaž wěrny. Cysła bu pódawane z dypkom kaž decimalny źělak.

Pśikład:

{{ #expr: (100 -32) / 9 * 5 round 0 }}

se pokaza

38

To pśelicujo 100 Fahrenheit do Celsiusoweje temperatury.

ifexpr wugódnośi matematiski wuraz.

{{#ifexpr: <wuraz> | <pótomowy tekst> | <howacejowy tekst> }}

Gaž rezultat <wuměnjenje> 0 (nul), bu <howacejowy tekst> wrośony. Howacej bu <pótomowy tekst> wrośony. <howacejowy tekst> móžo felowaś, pótom bu nic wrośone.

Syntaksa wuraza bu we wopisanje wó expr wujasnjowana.

switch pśirownujo gódnosć z wšakimi drugimi. Zakładna syntaksa jo:

{{ #switch: <komparacijowa gódnosć>
| gódnosć 1=<rezultat 1>
| gódnosć 2=<rezultat 2>
| gódnosć 3=<rezultat 3>
| ...
| gódnosć<sub>n</sub>=<rezultat <sub>n</sub>>
| #default=<standardny rezultat>
}}

switch pśeglědujo wše gódnosće, tak dłujko ako bu gódnosć pśirownowanja wunamakana. Pótom bu wótpowědny rezultat wrośony. Gaž žedna gódnosć se njerowna, pótom bu zapisk w #default wužywany, gaž ten eksistěrujo.

Samski rezultat we drugich gódnosćach teke jo móžny:

{{ #switch: <komparacijowa gódnosć>
| gódnosć 1
| gódnosć 2
| gódnosć 3=<rezultat 1,2,3>
| ...
| gódnosć<sub>n</sub>=<rezultat <sub>n</sub>>
| #default=<standardny rezultat>
}}

#time jo funkcija za formatowanje casow a datumow. Syntaksa jo:

{{ #time: format }}

abo

{{ #time: format | time }}

Gaž "time" njebu mjenjowany, se wužywa cas za casowy dypk pśetwórjenja do HTML. Dla "servercaching" móžo dójś k wótchylenju w pokazce nastawka až do jadnego tyźenja.

Parameter "format" jo pódobny k PHP-datumowym parametram: http://php.net/date.

Slědujuce parametry maju samske wóznamy kaž w PHP.

Kode Wopisanje Wudaśe
d źeń, z 0 (null) 05
D skrotconje wšednego dnja, jano zrědka internacionalizowany Fr
j źeń, bźez 0 (null)
l wupisane mě wšednego dnja, jano zrědka internacionalizowany Freitag
F wupisane mě wšednego dnja, regularnje internacionalizowany Januar
m mjasec, z 0 (null) 01
M skrotcone mě mjasacowego mjenja, regularnje internacionalizowane Jan
n mjasec, bźez 0 (null) 1
Y lěto, styriměstnowe 2007
y lěto, dwuměstnowe 07
H góźina, z 0 (null) 15
i minuta, z 0 (null) 05
s sekunda, z 0 (null) 35

Slědujuce koda su rozšyrjonja k PHP.

Kode Wopisanje
xn Formatowaj slědujuce numeriske kode kaž gruby-ASCII. Na pś. w Hindišćinje: {{ #time:H, xnH}} pokaza 21, 21.
xr Formatowaj slědujuce numeriske kode kaž romske cysło.
xg Wudaj genitiwowu formu mjasecowego mjenja, za rěcy, kótarež maju rozeznawanja mjazy genitiwom a nominatiwom.
xx Pismik "x"

Wšo njeznate znamješko bu pódate do wudaśa bźez wobźěłanja. Za to eksistěrujotej dwě konwenciji wó njewobźěłanym pódaśu znamješkow.

  • Znamješko mjazy dwójnym " bu kaž take wudate (bźez ").

Format parametra "format" jo identiski z PHP-funkciju strtotime(). Relatiwne nadaśa, kaž na pś. "+10 hours" bu pódpěrane. Glědaj "GNU tar manual" (http://www.gnu.org/software/tar/manual/html_node/tar_109.html) za wšaku informaciju.

ParseFunctions móžo teke se wužywa z subst, tak dłujko kaž žedne prozne znamja mjazy subst: a # stoje.

Wikiowa syntaksa za tabele ten cas se njemóžo znutřka wuměnjenjow wužywaś, togodla eksistěrujotej styri triki:

Schowaj(śo) Pipeowe znamješko („|“) pśed Parserowu funkciju pśez to zo se pśedłogu Pśedłoga:! (diskusija, Co wótkazujo sem, wobźěłaj) wužywa.

{{#if: {{{1|}}} | {{!}} celowe wopśimjeśe | žedna cela}}
Parametry {{!}} {{!-}} {{!!}} {{!-!}} {{!+}} {{(!}} {{!)}} {{!~}}
Wopśimjeśa | |- || |-

|

|+ {| |} |-

!

Se wužywa HTML-tabelowa syntaksa. <table>, <th>, <td>, <thead>, <tbody>,

Se wužywa wikina syntaksa, na pś. <nowiki>|</nowiki>

Se wužywa html entity &#124;.

meta:Help:ParserFunctions