From 1e4513c26d279e150de4a9fa54e37c1799379aca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B4=D1=80=D0=B5=D0=B9=20=D0=98=D0=B7=D0=BE?= =?UTF-8?q?=D1=82=D0=BE=D0=B2?= Date: Wed, 30 Dec 2015 13:01:01 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20if?= =?UTF-8?q?set=20=D0=BA=D0=BE=D1=82=D0=BE=D1=80=D0=B0=D1=8F=20=D1=80=D0=B5?= =?UTF-8?q?=D0=B0=D0=B3=D0=B8=D1=80=D1=83=D0=B5=D1=82=20=D1=82=D0=BE=D0=BB?= =?UTF-8?q?=D1=8C=D0=BA=D0=BE=20=D0=BD=D0=B0=20=D1=83=D1=81=D1=82=D0=B0?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5=D0=BD=D0=BD=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D1=8C.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- klein.php | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/klein.php b/klein.php index 725d001..2c4d43e 100644 --- a/klein.php +++ b/klein.php @@ -1,6 +1,6 @@ "; + }, $result) . " ?>"; return ($x[0][2] == '!') ? "" : $code; }]; }, [ ["{% for+:id+in+:var %}", "foreach(#2s as \$index => #1s): \$loop = Klein::loop(\$index, #2s);"], ["{% for+:id , :id+in+:var %}", "foreach(#3s as #1s => #2s):"], ["{% endfor %}", "endforeach;"], + ["{% ifset+:var %}", "if(isset(#1s)):"], ["{% if+:var %}", "if(isset(#1s) && #1s):"], ["{% unless+:var %}", "if(!(isset(#1s) && #1s)):"], ["{% else %}", "else:"], @@ -30,7 +31,7 @@ class Klein { ["{% macro+:id \(( :id (, :id )*)?\) %}", "function macro_#1(#2s) {"], ["{% endmacro %}", "}"] ]); - + $result = file_get_contents($html); foreach($pattern as $arg) { $result = preg_replace_callback($arg[0], $arg[1], $result); @@ -42,10 +43,10 @@ class Klein { static function loop($idx, &$array) { $is_even = $idx % 2; return ['first' => $idx == 0 - , 'last' => $idx == count($array) - 1 - , 'odd' => !$is_even - , 'even' => $is_even]; - } + , 'last' => $idx == count($array) - 1 + , 'odd' => !$is_even + , 'even' => $is_even]; + } function render($vars) { extract($vars);