mirror of
https://gitee.com/fastadminnet/framework.git
synced 2026-07-07 23:22:48 +08:00
修正template和taglib类的session标签解析
This commit is contained in:
@@ -659,10 +659,10 @@ class Template
|
|||||||
//模板函数过滤
|
//模板函数过滤
|
||||||
$fun = strtolower(trim($args[0]));
|
$fun = strtolower(trim($args[0]));
|
||||||
switch ($fun) {
|
switch ($fun) {
|
||||||
case 'default': // 特殊模板函数
|
case 'default': // 特殊模板函数
|
||||||
$name = '(' . $name . ')?(' . $name . '):' . $args[1];
|
$name = '(' . $name . ')?(' . $name . '):' . $args[1];
|
||||||
break;
|
break;
|
||||||
default: // 通用模板函数
|
default: // 通用模板函数
|
||||||
if (!in_array($fun, $template_deny_funs)) {
|
if (!in_array($fun, $template_deny_funs)) {
|
||||||
if (isset($args[1])) {
|
if (isset($args[1])) {
|
||||||
if (strstr($args[1], '###')) {
|
if (strstr($args[1], '###')) {
|
||||||
@@ -745,7 +745,7 @@ class Template
|
|||||||
$parseStr = "date('Y-m-d g:i a',time())";
|
$parseStr = "date('Y-m-d g:i a',time())";
|
||||||
break;
|
break;
|
||||||
case 'VERSION':
|
case 'VERSION':
|
||||||
$parseStr = 'THINK_TEMPLATE_VERSION';
|
$parseStr = 'THINK_VERSION';
|
||||||
break;
|
break;
|
||||||
case 'LDELIM':
|
case 'LDELIM':
|
||||||
$parseStr = $this->config['tpl_begin'];
|
$parseStr = $this->config['tpl_begin'];
|
||||||
|
|||||||
@@ -97,7 +97,10 @@ class TagLib
|
|||||||
}
|
}
|
||||||
$xml = (array) ($xml->tag->attributes());
|
$xml = (array) ($xml->tag->attributes());
|
||||||
$array = array_change_key_case($xml['@attributes']);
|
$array = array_change_key_case($xml['@attributes']);
|
||||||
if (!is_array($array)) return [];
|
if (!is_array($array)) {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
$tag = strtolower($tag);
|
$tag = strtolower($tag);
|
||||||
if (isset($this->tags[$tag]['attr'])) {
|
if (isset($this->tags[$tag]['attr'])) {
|
||||||
$attrs = explode(',', $this->tags[$tag]['attr']);
|
$attrs = explode(',', $this->tags[$tag]['attr']);
|
||||||
@@ -193,14 +196,14 @@ class TagLib
|
|||||||
if (isset($vars[3])) {
|
if (isset($vars[3])) {
|
||||||
$parseStr = '$_COOKIE[\'' . $vars[2] . '\'][\'' . $vars[3] . '\']';
|
$parseStr = '$_COOKIE[\'' . $vars[2] . '\'][\'' . $vars[3] . '\']';
|
||||||
} else {
|
} else {
|
||||||
$parseStr = '$_COOKIE[\'' . $vars[2] . '\']';
|
$parseStr = '\\think\\cookie::get(\'' . $vars[2] . '\')';
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'SESSION':
|
case 'SESSION':
|
||||||
if (isset($vars[3])) {
|
if (isset($vars[3])) {
|
||||||
$parseStr = '$_SESSION[\'' . $vars[2] . '\'][\'' . $vars[3] . '\']';
|
$parseStr = '$_SESSION[\'' . $vars[2] . '\'][\'' . $vars[3] . '\']';
|
||||||
} else {
|
} else {
|
||||||
$parseStr = '$_SESSION[\'' . $vars[2] . '\']';
|
$parseStr = '\\think\\session::get(\'' . $vars[2] . '\')';
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'ENV':$parseStr = '$_ENV[\'' . $vars[2] . '\']';
|
case 'ENV':$parseStr = '$_ENV[\'' . $vars[2] . '\']';
|
||||||
@@ -210,13 +213,13 @@ class TagLib
|
|||||||
case 'CONST':$parseStr = strtoupper($vars[2]);
|
case 'CONST':$parseStr = strtoupper($vars[2]);
|
||||||
break;
|
break;
|
||||||
case 'LANG':
|
case 'LANG':
|
||||||
$parseStr = '\think\Lang::get("' . $vars[2] . '")';
|
$parseStr = '\\think\\Lang::get("' . $vars[2] . '")';
|
||||||
break;
|
break;
|
||||||
case 'CONFIG':
|
case 'CONFIG':
|
||||||
if (isset($vars[3])) {
|
if (isset($vars[3])) {
|
||||||
$vars[2] .= '.' . $vars[3];
|
$vars[2] .= '.' . $vars[3];
|
||||||
}
|
}
|
||||||
$parseStr = 'C("' . $vars[2] . '")';
|
$parseStr = '\\think\\config::get("' . $vars[2] . '")';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} else if (count($vars) == 2) {
|
} else if (count($vars) == 2) {
|
||||||
@@ -251,10 +254,10 @@ class TagLib
|
|||||||
//模板函数过滤
|
//模板函数过滤
|
||||||
$fun = strtolower(trim($args[0]));
|
$fun = strtolower(trim($args[0]));
|
||||||
switch ($fun) {
|
switch ($fun) {
|
||||||
case 'default': // 特殊模板函数
|
case 'default': // 特殊模板函数
|
||||||
$name = '(' . $name . ')?(' . $name . '):' . $args[1];
|
$name = '(' . $name . ')?(' . $name . '):' . $args[1];
|
||||||
break;
|
break;
|
||||||
default: // 通用模板函数
|
default: // 通用模板函数
|
||||||
if (isset($args[1])) {
|
if (isset($args[1])) {
|
||||||
if (strstr($args[1], '###')) {
|
if (strstr($args[1], '###')) {
|
||||||
$args[1] = str_replace('###', $name, $args[1]);
|
$args[1] = str_replace('###', $name, $args[1]);
|
||||||
|
|||||||
Reference in New Issue
Block a user