示例#1
0
 function read($pagename)
 {
     global $Compat1x, $KeepToken;
     $page = parent::read($pagename);
     if ($page) {
         $page['text'] = preg_replace('/(\\[([=@]).*?\\2\\])/se', "Keep(PSS('\$1'))", @$page['text']);
         $page['text'] = preg_replace(array_keys($Compat1x), array_values($Compat1x), $page['text']);
         $page['text'] = preg_replace("/{$KeepToken}(\\d.*?){$KeepToken}/e", '$GLOBALS[\'KPV\'][\'$1\']', $page['text']);
     }
     return $page;
 }
示例#2
0
 function read($pagename)
 {
     global $Compat1x, $KeepToken;
     $page = parent::read($pagename);
     if ($page) {
         $page['text'] = preg_replace('/(\\[([=@]).*?\\2\\])/se', "Keep(PSS('\$1'))", @$page['text']);
         foreach ($Compat1x as $pat => $rep) {
             $page['text'] = preg_replace($pat, $rep, $page['text']);
         }
         $page['text'] = preg_replace("/{$KeepToken}(\\d.*?){$KeepToken}/e", '$GLOBALS[\'KPV\'][\'$1\']', $page['text']);
     }
     return $page;
 }
示例#3
0
 function read($pagename, $since = 0)
 {
     $pagefile = $this->pagefile($pagename);
     if ($pagefile && ($fp = @fopen($pagefile, "r"))) {
         while (!feof($fp)) {
             $line = fgets($fp, 512);
             $isXML = substr($line, 0, 5) == '<?xml' || substr(ltrim($line), 0, 5) == '<page';
             if (trim($line) != '') {
                 break;
                 // we found non-empty line
             }
         }
         if ($isXML) {
             fseek($fp, 0, SEEK_SET);
             $pagefilesize = filesize($pagefile);
             $data = fread($fp, $pagefilesize);
             @fclose($fp);
             return $this->read_xml($data, $since);
         } else {
             @fclose($fp);
             return parent::read($pagename, $page);
         }
     }
 }