předłohowe Programowanje

Wot srjedźiny apryla 2006 ma k dispoziciji Wiki-syntaks mediawikineho softwara wšelake konstrukty programoweje rěče za wužiwanje we předłohach.

Pomoc

Rěčne kostrukty by so małe wužiwać jenož we předłohowym mjenowym rumje.

Wopisanja ParserFunctions

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

Funkcija if

Funkcija if je hdyž-potom-hewak-owy konstrukt. Syntaksa je:

{{#if:  |  |  }} {{ #if:  {{{parameter|}}} | Parameter je definowany. | Parameter njeje definowany, abo prózdny  }} 

Hdyž (wariabla za) eksistuje a wobsahuje tekst, potom software da pokazać . Hdyž njeeksistuje (wariabla za) , wona je prózdna abo wobsahuje jenož prózdna znamjenja, potom software da pokazać . tež móže falować, potom software da pokazać ničo.

Kedźbu: if njefunguje z runicami. Hlej za to ifeq a ifexpr.

Funkcija ifeq

ifeq přiruna dwaj sćěhaj ze někotrych znamjenjow a wróći wšelake teksty.

{{#ifeq:  |  |  |  }} 

Funkcija ifexist

ifexist pruwuje, hač lemma eksistuje, a wróći wšelake teksty.

{{#ifexist:  |  |  }} 

Kedźbu: Interwikine linki njebu pruwowane.

Funkcija expr

expr wuliči matematiske wurazy.

{{ #expr:  }} 
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
= runosć {{#expr: 30 = 7}} = 0
<> abo != njerunosć {{#expr: 30 <> 7}} = 1
< mjeńšo hač {{#expr: 30 < 7}} = 0
> wjetšo hač {{#expr: 30 > 7}} = 1
<= mjeńšo abo runje {{#expr: 30 <= 7}} = 0
>= wjetšo abo runje {{#expr: 30 >= 7}} = 1
and logiske A (Němsce: UND) {{#expr: 30 and 7}} = 1
or logiske ABO (Němsce: ODER) {{#expr: 30 or 7}} = 1
not logiske NIC (Němsce: NICHT) {{#expr: not 7}} = 0
( ) grupěrowanje {{#expr: (30 + 7) *7}} = 259

Boolske operatory wobjednawaja 0 (nul) kaž njewěrny a 1 kaž wěrny. Čisła buchu podawane z dypkom kaž decimalny dźělnik.

Přikład:

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

so pokaza

38

To přeličuje 100 Fahrenheit do Celsiusoweje temperatury.

Funkcija ifexpr

ifexpr wuhódnoći matematiski wuraz.

{{#ifexpr:  |  |  }} 

Hdyž rezultat 0 (nul), bu wróćeny. Hewak bu wróćeny. móže falować, potom bu ničo wróćene.

Syntaksa wuraza bu we wopisanje wo expr wujasnjowana.

Funkcija switch

switch přirunuje hódnosć z wjacorymi druhimi. Zakładna syntaksa je:

{{ #switch:  | hódnosć 1= | hódnosć 2= | hódnosć 3= | ... | hódnosćn=n> | #default= }} 

switch přehladuje wšě hódnosće, doniž bu hódnosć přirunowanja wunamakana. Potom bu wotpowědny rezultat wróćeny. Hdyž žana hódnosć so njeruna, potom bu zapisk w #default wužiwany, hdyž tón eksistuje.

Samsny rezultat we druhich hódnosćach tež je móžny:

{{ #switch:  | hódnosć 1 | hódnosć 2 | hódnosć 3= | ... | hódnosćn=n> | #default= }} 

Funkcija time

#time je funkcija za formatowanje časow a datumow. Syntaksa je:

{{ #time: format }} 

abo

{{ #time: format | time }} 

Hdyž "time" njebu mjenowany, so wužiwa čas za časowy dypk přetworjenja do HTML. Dla "servercaching" móže dóńć k wotchilenju w pokazce nastawka hač do jedneho tydźenja.

Parameter "format" je podobny k PHP-datumowym parametram: http://php.net/date.

Slědowace parametry maja samsne woznamy kaž w PHP.

Kode Wopisanje Wudaće
d dźeń, z 0 (null) 05
D skrótšenje wšědneho dnja, jenož zrědka internacionalizowany Fr
j dźeń, bjez 0 (null)
l wupisane mjeno wšědneho dnja, jenož zrědka internacionalizowany Freitag
F wupisane mjeno wšědneho dnja, regularnje internacionalizowany Januar
m měsačk, z 0 (null) 01
M skrótšene mjeno měsačkoweho mjena, regularnje internacionalizowane Jan
n měsačk, bjez 0 (null) 1
Y lěto, štyriměstnowe 2007
y lěto, dwuměstnowe 07
H hodźina, z 0 (null) 15
i minuta, z 0 (null) 05
s sekunda, z 0 (null) 35

Slědowace koda su rozšěrjenja k PHP.

Kode Wopisanje
xn Formatowaj slědowace numeriske kode kaž hruby-ASCII. Na př. w Hindišćinje: {{ #time:H, xnH}} pokaza 02, 02.
xr Formatowaj slědowace numeriske kode kaž romske čisło.
xg Wudaj genitiwowu formu měsačkoweho mjena, za rěče, kotrež maja rozeznawanja mjezy genitiwom a nominatiwom.
xx Pismik "x"

Wšo njeznate znamješko bu podate do wudaća bjez wobdźěłanja. Za to eksistujetej dwě konwenciji wo njewobdźěłanym podaću znamješkow.

  • Znamješko mjezy dwójnym " bu kaž tajke wudate (bjez ").

Format parametra "format" je identiski z PHP-funkciju strtotime(). Relatiwne nadaća, kaž na př. "+10 hours" bu podpěrane. Hlej "GNU tar manual" (http://www.gnu.org/software/tar/manual/html_node/tar_109.html) za wjacoru informaciju.

Wužiwanje z subst

ParseFunctions móže tež so wužiwa z subst, tak dołho kaž žane prózdnoty mjezy subst: a # steja.

Wosebitosće

Tabele

Wikiowa syntaksa za tabele tón čas so njemóže znutřka wuměnjenjow wužiwać, tohodla eksistujetej štyri triki:

Metoda A

Schowaj(će) Pipeowe znamješko („|“) před Parserowu funkciju přez to zo so předłohu Předłoha:! (diskusija, Što wotkazuje sem, wobdźěłaj) wužiwa.

Přikład
{{#if: {{{1|}}} | {{!}} celowy wobsah | žana cela}} 
Dalše předłohi
Parametry {{!}} {{!-}} {{!!}} {{!-!}} {{!+}} {{(!}} {{!)}} {{!~}}
Wobsahi | |- || |-

|

|+ {| |} |-

!

Metoda B

So wužiwa HTML-tabelowa syntaksa.

, , ,

Metoda C

So wužiwa wikina syntaksa, na při. |

Metoda D

So wužiwa html entity |.

Weblinki

meta:Help:ParserFunctions

, ,