Nette\Config a escapování

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

Ahoj, všiml jsem si takové podivnosti, potřebuji–li pomocí config.ini mít v aplikaci nadefinovanou konstantu, která by měla obsahovat dvojité uvozovky, nejde to ;). Zkoušel jsem následující varianty v config.ini:

EDIT: Koukám, že Texy! se snaží inteligentně z prvního páru uvozovek u první a třetí varianty dělat spodní a vrchní uvozovky (věřte mi, mám tam vrchní ;)).

const.MOJE = "\"text v uvozovkách\"" — načte lomítka, uvozovky vynechá

const.MOJE = ""text v uvozovkách"" — načte bez uvozovek

const.MOJE = ‚„text v uvozovkách“‘ — načtě ty apostrofy namísto uvozovek

Jakpak to mám udělat? ;)

P. S. : Vím, že jde použít i např. HTML entity, ale to je pak takové blbé, protože když to budu chtít někde v šabloně vyblít, budu muset používat {!=} a to je takové nebezpečné :).

Díky,
Petr

Editoval m0t3jl (20. 7. 2009 16:15)

David Grudl
Nette Core | 8228
+
0
-

To je nedostatek v parse_ini_file(), zkus napsat na bugs.php.net.

Petr Motejlek
Člen | 293
+
0
-

David Grudl napsal(a):

To je nedostatek v parse_ini_file(), zkus napsat na bugs.php.net.

Tak to je dobré ;). Na php.net se ve fóru k parse_ini_file() objevují i jiné velmi pohoršující zprávy, např. že to velmi špatně zvládá, když napravo od „rovná se“ je třeba no, off, yes — tfuj. No, asi je na čase zdokonalit XmlConfigAdapter a začít jej propagovat jako výchozí a lepší cestu než jsou .ini soubory ;).

PetrP
Člen | 587
+
0
-

m0t3jl napsal(a):

EDIT: Koukám, že Texy! se snaží inteligentně z prvního páru uvozovek u první a třetí varianty dělat spodní a vrchní uvozovky (věřte mi, mám tam vrchní ;)).

Zápis kódu v tomto fóru