From 1b9cef6232839b27a735655c1ddfbf55bba68de5 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Tue, 25 Jul 2017 17:49:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E8=BF=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- library/think/Template.php | 18 ++++++------------ tests/thinkphp/library/think/templateTest.php | 4 ++-- 2 files changed, 8 insertions(+), 14 deletions(-) diff --git a/library/think/Template.php b/library/think/Template.php index 64ce2841..145b7f12 100644 --- a/library/think/Template.php +++ b/library/think/Template.php @@ -763,32 +763,26 @@ class Template } else { if (isset($array[1])) { $this->parseVar($array[2]); - $_name = ' && ' . $name . $array[1] . $array[2]; + $express = $name . $array[1] . $array[2]; } else { - $_name = ''; + $express = false; } // $name为数组 switch ($first) { case '?': // {$varname??'xxx'} $varname有定义则输出$varname,否则输出xxx - $str = ''; + $str = ''; break; case '=': // {$varname?='xxx'} $varname为真时才输出xxx - $str = ''; + $str = ''; break; case ':': // {$varname?:'xxx'} $varname为真时输出$varname,否则输出xxx - $str = ''; + $str = ''; break; default: - if (isset($array[1])) { - $this->parseVar($array[2]); - $name = $name . $array[1] . $array[2]; - } else { - $name = '!empty(' . $name . ')'; - } - $str = ''; + $str = ''; } } } else { diff --git a/tests/thinkphp/library/think/templateTest.php b/tests/thinkphp/library/think/templateTest.php index 27e49dbb..d930282e 100644 --- a/tests/thinkphp/library/think/templateTest.php +++ b/tests/thinkphp/library/think/templateTest.php @@ -78,7 +78,7 @@ EOF; {\$name.a==\$name.b?='test'} EOF; $data = << + EOF; $template->parse($content); @@ -88,7 +88,7 @@ EOF; {\$name.a==\$name.b?'a':'b'} EOF; $data = << + EOF; $template->parse($content);