Escapování v Zend Framework rubrika: Programování: PHP

2 tobotomas
položil/-a 21.4.2015

Ahoj, mám problém v ZF 1 escapování $view->escape() v šabloně, požíváme šablonovací systém RainTpl. Když do této funkce dám text, tak mi to vyescapuje všechno včetně entit českých znaků, takže je text pak nečitelný. Celý zápis je {$view->escape('Příliš žluťoučký kůň')} Nemáte někdo nápad jak vyloužit např & z escapování? Nikde jsem k tomu na webu nic nenašel. Díky

odkaz Vyřešeno
5 podhy
odpověděl/-a 21.4.2015

Předejte si do Zend_View vlastní escapovací funkci pomocí setEscape() (kterému předáte callback). Defaultně se v metodě escape() používá htmlspecialchars(). Pokud vám escapuje např. i české znaky tak jí máte nejspíš přepnutou na htmlentities()

Komentáře

  • tobotomas : Nakonec jsem to udělal tak, že to neescapuju při vkládání do db ale jen na výstupu a tim se to vyřešilo 21.4.2015
  • rs : Obecne si myslim ze je dost spatne escapovat data uz na vstupu. Jsou s tim pak casto jenom problemy :) 21.4.2015
  • tobotomas : jasně, to si také myslím a na školení nám to taky říkali. Tady jsem přišel k hotovému systému na kterém dál pracuju, tak holt narážím na takovéhle záludnosti. 22.4.2015

Pro plný přístup na Devel.cz se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.