| @@ -613,10 +613,15 @@ class DedeTagParse | |||||
| $phpcode = $refObj->GetInnerText(); | $phpcode = $refObj->GetInnerText(); | ||||
| } | } | ||||
| $phpcode = preg_replace("/'@me'|\"@me\"|@me/i", '$DedeMeValue', $phpcode); | $phpcode = preg_replace("/'@me'|\"@me\"|@me/i", '$DedeMeValue', $phpcode); | ||||
| @eval($phpcode); //or die("<xmp>$phpcode</xmp>"); | |||||
| try { | |||||
| @eval($phpcode); | |||||
| $this->CTags[$i]->TagValue = $DedeMeValue; | |||||
| $this->CTags[$i]->IsReplace = TRUE; | |||||
| } catch (Exception $e) { | |||||
| //or die("<xmp>$phpcode</xmp>"); | |||||
| } | |||||
| $this->CTags[$i]->TagValue = $DedeMeValue; | |||||
| $this->CTags[$i]->IsReplace = TRUE; | |||||
| } | } | ||||
| /** | /** | ||||
| @@ -869,12 +874,18 @@ class DedeTagParse | |||||
| $functionname = str_replace("\"}", "\"]", $functionname); | $functionname = str_replace("\"}", "\"]", $functionname); | ||||
| $functionname = preg_replace("/'@me'|\"@me\"|@me/i", '$DedeFieldValue', $functionname); | $functionname = preg_replace("/'@me'|\"@me\"|@me/i", '$DedeFieldValue', $functionname); | ||||
| $functionname = "\$DedeFieldValue = ".$functionname; | $functionname = "\$DedeFieldValue = ".$functionname; | ||||
| @eval($functionname.";"); //or die("<xmp>$functionname</xmp>"); | |||||
| if (empty($DedeFieldValue)) { | |||||
| try { | |||||
| @eval($functionname.";"); | |||||
| if (empty($DedeFieldValue)) { | |||||
| return ''; | |||||
| } else { | |||||
| return $DedeFieldValue; | |||||
| } | |||||
| } catch (Exception $e) { | |||||
| //or die("<xmp>$functionname</xmp>"); | |||||
| return ''; | return ''; | ||||
| } else { | |||||
| return $DedeFieldValue; | |||||
| } | } | ||||
| } | } | ||||
| /** | /** | ||||