User:Frantik/99bottles
From The 3geez Wiki
For http://99-bottles-of-beer.net/
Winter Code
<nowinter>
{{#function | formatNum || {{#if | {{#1}} || {{#1}} || no more }} bottle{{#if | {{#1 == 1}} || || s}} }} {{#for | {{#i @= 99}} || {{#i >= 0}} || {{#i --}} || {{#bottles | @= | {{#formatNum | {{#i}} }} }} {{#ucfirst | {{#bottles}} }} of beer on the wall, {{#bottles}} of beer.<br /> {{#if | {{#i}} || Take one down and pass it around, {{#formatNum| {{#i - 1}} }} || Go to the store and buy some more, 99 bottles }} of beer on the wall. }}
</nowinter>
Equivalent PHP Code
function formatNum($num) { return (($num) ? $num : 'no more') . ' bottle' . (($num == 1) ? '' : 's'); } for ($i = 99; $i >= 0; $i--) { $bottles = formatNum($i); echo ucfirst($bottles) . " of beer on the wall, $bottles of beer.\n" . ($i ? "Take one down and pass it around, " . formatNum($i - 1) : "Go to the store and buy some more, 99 bottles" ) . " of beer on the wall.\n\n"; }
Output
{{#function | formatNum || {{#if | {{#1}} || {{#1}} || no more }} bottle{{#if | {{#1 == 1}} || || s}} }}
{{#for | {{#i @= 99}} || {{#i >= 0}} || {{#i --}} ||
{{#bottles | @= | {{#formatNum | {{#i}} }} }}
{{#ucfirst | {{#bottles}} }} of beer on the wall, {{#bottles}} of beer.
{{#if | {{#i}}
|| Take one down and pass it around, {{#formatNum| {{#i - 1}} }}
|| Go to the store and buy some more, 99 bottles
}} of beer on the wall.
}}