Parametr helperu proměnná v šabloně

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Martin Mates
Člen | 179
+
0
-

Chci se zeptat. Vytvořil jsem si helper, který by měl skloňovat měsíce nebo týdny podle toho kolik jich je. Myšlenka takováto: {$a['jednotka']|czSklon:5} Pokud bude $a[‚jednotka‘] týden, tak to vrátí ‚týdnů‘ protože jich má být 5.

To by nebyl problém, jenže počet by měla být také proměnná takže se dostávám k následujícímu: {$a['jednotka']|czSklon:$a['pocet']} To nejde, hází to Parse Error.

Jde to vůbec?

Jan Tvrdík
Nette guru | 2595
+
0
-

Jaký PHP kód to vytvoří?

jasir
Člen | 746
+
0
-

Martin Mates napsal(a):

Chci se zeptat. Vytvořil jsem si helper, který by měl skloňovat měsíce nebo týdny podle toho kolik jich je. Myšlenka takováto: {$a['jednotka']|czSklon:5} Pokud bude $a[‚jednotka‘] týden, tak to vrátí ‚týdnů‘ protože jich má být 5.

Nevím, jestli to jde tak, jak píšeš, ale ten helper může dostat více parametrů tímto způsobem:

<?php
function czsklon_helper($unit, $pocet)
{
...
}
?>

a pak můžeš volat

<?php
{$a['jednotka'],$pocet |czsklon}
?>

Editoval jasir (30. 4. 2009 21:55)

Martin Mates
Člen | 179
+
0
-
<?php
{$a['jednotka'],$pocet |czsklon}
?>

Díky, tohle funguje! Myslel jsem, že se další parametry helperu dávají za dvojtečku.

David Grudl
Nette Core | 8218
+
0
-

{$a['jednotka'],$pocet |czsklon} je spíš trik, u kterého nelze zaručit budoucí kompatibilitu. Nešlo by třeba {$a['jednotka']|czSklon:"$a[pocet]"}?

Martin Mates
Člen | 179
+
0
-

David Grudl napsal(a):

{$a['jednotka'],$pocet |czsklon} je spíš trik, u kterého nelze zaručit budoucí kompatibilitu. Nešlo by třeba {$a['jednotka']|czSklon:"$a[pocet]"}?

Zkusil jsem to takto: {$a['jednotka']|czSklon:"$a['pocet']"} a to nefunguje. Pak jsem si všiml, že nemáš uvozovky u $a[pocet]. Dal jsem je pryč a shazam! Už to jede. Nechápu :-) Díky!

Ondřej Mirtes
Člen | 1536
+
0
-

A nechtělo by to spíš zabudovat rovnou nějakou plnohodnotnou lokalizaci, než toto?

Viz např.: https://forum.nette.org/…i-lokalizace

Martin Mates
Člen | 179
+
0
-

LastHunter napsal(a):

A nechtělo by to spíš zabudovat rovnou nějakou plnohodnotnou lokalizaci, než toto?

Viz např.: https://forum.nette.org/…i-lokalizace

O tom jsem nevěděl. Díky! Určitě na to mrknu.

David Grudl
Nette Core | 8218
+
0
-

Tak nyní už by mělo fungovat i {$a['jednotka']|czSklon:$a['pocet']}.

medhi
Generous Backer | 255
+
0
-

Lze jako parametr uvést i array? Jak? Děkuji