ugrás a tartalomhoz

Csere változó értékre preg_replace-szel

Anonymous · 2005. Júl. 29. (P), 21.29
Sziasztok!

Egy sablonkezelő rendszert is szeretnék készíteni a honlapomba. A preg_replace-szel szeretném kicserélni a megfelelő stringeket változókra:

$kimenet = preg_replace("/{([A-Z]*)}/", "\$valtozok[\\1]", $miben);
A kód rendesen kicseréli a megfelelő részeket, de a változók értékét nem helyettesíti be. Mit kell megváltoztatnom, hogy behelyettesítse?
 
1

Preg replace execute code

Anonymous · 2005. Júl. 29. (P), 22.23
$kimenet = preg_replace('/{([A-Z]+)}/e', '$valtozok[$1]', $miben);
2

eval

kgyt · 2005. Júl. 30. (Szo), 00.48
http://hu.php.net/manual/hu/function.eval.php

--
Szeretettel: Károly György Tamás
kgyt(a)kgyt.hu - http://kgyt.hu
3

Ja igen...

kgyt · 2005. Júl. 30. (Szo), 00.50
A fenti javaslattal variálható...

--
Szeretettel: Károly György Tamás
kgyt(a)kgyt.hu - http://kgyt.hu
5

eval evil

Hodicska Gergely · 2005. Aug. 1. (H), 14.17
Erre jelen semmi szükség sincs rá, sőt kifejezetten rossz megoldás. Eleve kerülendő mindig az eval használata, mert egyrészt komoly biztonsági rést üthetünk a programunkon, ha nem nagyon átgondoltan használjuk, ráadásul lassú, így rá építeni egy tamplate rendszert, az nem túl bölcs dolog.


Felhő
6

Valóban

kgyt · 2005. Aug. 1. (H), 15.23
Valóban nem ez a jobb megoldás, de használható...
Mondjuk én sem építenék rá template rendszert.
Sőt. Nem is emlékszem, hogy utoljára mikor szerepelt éles kódban nálam eval... :-)

--
Szeretettel: Károly György Tamás
kgyt(a)kgyt.hu - http://kgyt.hu
4

Köszönöm a segítségeteket!

Anonymous · 2005. Júl. 30. (Szo), 10.14
Köszönöm a segítségeteket! Az elsőt használtam fel, és természetesen működik.