diff --git a/src/Flow/Extension/TSimple/TVariable.php b/src/Flow/Extension/TSimple/TVariable.php index 756f84a..462b54f 100644 --- a/src/Flow/Extension/TSimple/TVariable.php +++ b/src/Flow/Extension/TSimple/TVariable.php @@ -96,16 +96,20 @@ public function view() } else { - foreach ($this->attributes as $key => $value) + $attributes = array_merge([$variable], $this->attributes); + + foreach ($attributes as $key => $value) { + $attributes[$key] = str_replace('\'', '"', $attributes[$key]); + if (preg_match('~^(?[\'"])\X*(\k)$~', $value, $match)) { - $this->attributes[$key] = mb_substr($value, 1, -1); + $attributes[$key] = mb_substr($value, 1, -1); } } $storage = '$this->configure->di()->call(\'' . $callback . '\', '; - $export = var_export(array_merge([$variable], $this->attributes), true); + $export = var_export($attributes, true); $regExp = sprintf('~\'(%s)\'~', self::REGEXP_VARIABLE); $export = preg_replace($regExp, '$1', $export); $export = preg_replace('~\'(-?[\d\.]+)\'~', '$1', $export); diff --git a/src/Flow/Flow.php b/src/Flow/Flow.php index 3afa8f8..dc87b88 100644 --- a/src/Flow/Flow.php +++ b/src/Flow/Flow.php @@ -279,13 +279,13 @@ protected function compile() preg_match_all('~"(\X+?)"~', $compile, $matches); + $this->_compile($compile); + foreach ($matches[1] as $match) { $this->_compile($compile, $match); } - $this->_compile($compile); - return $compile; } diff --git a/view/admin/bug.tpl b/view/admin/bug.tpl index fcbe52e..8090f18 100644 --- a/view/admin/bug.tpl +++ b/view/admin/bug.tpl @@ -4,4 +4,12 @@ {$file->getBasename()} {if ! $d} - {$helper->str()->fileSize($file->getSize())} {/if} -{/foreach} \ No newline at end of file +{/foreach} + +{assign d true} + +{if $d} +{else} + {$file->getBasename()} + - {$helper->str()->fileSize($file->getSize())} +{/if} \ No newline at end of file