Revision: 25956
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at April 14, 2010 21:25 by jmilly
Initial Code
preg_match_all("/\{\{IF ((?:[^\\?]|\\.)*)\?((?:[^\\:]|\\.)*):(.*)\}\}[^<\/]/", $template, $m, PREG_SET_ORDER); if (count($m)) { foreach ($m as $o) { if (preg_match("/(.*)\s+(==|!=)\s+(.*)/", $o[1], $x)) { if (preg_match("/^\"(.*)\"/", $x[1], $cx)) $e1 = $cx[1]; else $e1 = is_numeric($x[1])?$x[1]:$data[$x[1]]; if (preg_match("/^\"(.*)\"/", $x[3], $cx)) $e2 = $cx[1]; else $e2 = is_numeric($x[3])?$x[3]:$data[$x[3]]; if (preg_match("/^\"(.*)\"/", $o[2], $ox)) $er[0] = $ox[1]; else $er[0] = addslashes(htmlspecialchars($data[$o[2]])); if (preg_match("/^\"(.*)\"/", $o[3], $ox)) $er[1] = $ox[1]; else $er[1] = addslashes(htmlspecialchars($data[$o[3]])); $eval = "\$od = (\"$e1\" $x[2] \"$e2\")?\"$er[0]\":\"$er[1]\";"; eval($eval); } else { $od = $data[$o[1]]?$o[2]:$o[3]; if (preg_match("/^\"(.*)\"/", $od, $x)) $od = $x[1]; else $od = $data[$od]; } $template = str_replace($o[0], $od, $template); } }
Initial URL
Initial Description
Initial Title
A Ninja Funerals
Initial Tags
Initial Language
PHP