use eval() for lang code when first install

git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@9053 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
flyskyko 2011-09-06 09:17:00 +00:00
parent e239d46f1c
commit d10698d7fb
2 changed files with 28 additions and 6 deletions

View file

@ -31,7 +31,7 @@
if(!file_exists($this->xml_file)) return false;
if(!file_exists($this->php_file)){
$this->_compile();
} else {
} else {
if(filemtime($this->xml_file)>filemtime($this->php_file)) $this->_compile();
else return $this->php_file;
}
@ -39,6 +39,13 @@
return $this->_writefile() ? $this->php_file : false;
}
function getCompileContent() {
if(!file_exists($this->xml_file)) return false;
$this->_compile();
return $this->code;
}
/**
* @brief compile a xml_file
**/
@ -81,21 +88,21 @@
$type = $item->attrs->type;
if($type == 'array'){
$this->code .= $var."=array();\n";
$this->code .= $var."=array();\n";
$var .= '[\'%s\']';
}else{
$this->code .= $var."=new stdClass;\n";
$this->code .= $var."=new stdClass;\n";
$var .= '->%s';
}
$items = $item->item;
if(!is_array($items)) $item = array($items);
if(!is_array($items)) $items = array($items);
foreach($items as $item){
$this->_parseItem($item, $var);
}
} else {
$code = $this->_parseValues($value, $var);
$code = $this->_parseValues($value, $var);
$this->code .= $code;
}
}