首頁 > 後端開發 > php教程 > wecis 2.0 RC 版

wecis 2.0 RC 版

WBOY
發布: 2016-07-25 09:08:48
原創
925 人瀏覽過

調試bug 請通知本人,謝謝!
新版功能:
1. 新增{-script lang='php'-} 範本也可以寫php程式碼
2.修改1.0 細節錯誤: 如無用功程式碼,最佳化核心程式碼,提高運行編譯速度。
3.新增範本格式化函數{-$string|subistr(12):'...'-} ,時間格式化 {-$time|time('ymd')-}

  1. /**
  2. * [Wecis] (C)2012-2099haowei Inc.
  3. * 這不是免費軟體,使用須遵守許可條款
  4. * 版本:2.0 RC
  5. **/
  6. class wecis{
  7. private $assign=array ( );
  8. public $tpl_cache_dir = 'cache/';
  9. public $tpl_cache_open = TRUE;
  10. public $tpl_cache_time = 5 ;
  11. public $tpl_tpl_dir = 'template/dir; = '{-';
  12. public $tpl_rw_right = '-}';
  13. public function wecis(){
  14. return '[{name:'wecis 2.0 rc'}]';
  15. }
  16. public function allocate($tplvar,$value){
  17. if(empty($tplvar) ||empty($value)){
  18. $this->error(' wecis- > allocate() 缺少參數');
  19. }
  20. return $this->assign[$tplvar]=$value;
  21. }
  22. public function display($ tplfile){
  23. public function display($ tplfile){
  24. if(empty($tplfile)){ $this->error('wecis-> display() 參數遺失'); }
  25. if($this->tpl_cache_open){
  26. if(file_exists($this->tpl_cache_dir.$this->cahce_format($tplfile))){
  27. if($this-> ;cahce_timeout(> ; $tplfile)) {
  28. $this->cache_delete($tplfile);
  29. 包含$this->cache($tplfile) ? $this->tpl_cache_dir.$this->cahce_format($tplfile) : '' ;
  30. }else{
  31. 包含$this->tpl_cache_dir.$this->cahce_format($tplfile);
  32. }
  33. }else{
  34. 包含$this-this>cache( $tplfile) ? >tpl_cache_dir.$this->cahce_format($tplfile) : '';
  35. }
  36. }
  37. 公用函數儲存($tplfile){
  38. $data = file_get_contents ($this-> tpl_tpl_dir.$tplfile);
  39. $data = preg_replace('/'.$this->tpl_rw_left.'script lang='php''.$this->tpl_rw_right.'/' ,' $data = preg_replace('/'.$this->tpl_rw_left.'/script'.$this->tpl_rw_right.'/','?> ;',$data);
  40. $ data = preg_replace('/'.$this->tpl_rw_left.'loop ($(.*)?) as ($(.*)?)'.$this->tpl_rw_right.'/','',$data);
  41. $data = preg_replace('/'.$this->tpl_rw_left. '/loop'.$this->tpl_rw_right.'/','',$data);
  42. $data = preg_replace('/'.$this->tpl_rw_left.'($( .*)?)[((.*)?)]'.$this->tpl_rw_right.'/',' $data = preg_replace('/'.$this->tpl_rw_left.'if((.*)?)'.$this->tpl_rw_right.'/',' php if(\1){ ?>',$data );
  43. $data = preg_replace('/'.$this->tpl_rw_left.'else'.$this->tpl_rw_right.'/', '',$data);
  44. $data = preg_replace('/'.$this->tpl_rw_left.'/if'.$this->tpl_rw_right.'/ ','',$data);
  45. $data = preg_replace('/'.$this->tpl_rw_left.'($(.*)?)|subistr(((.*)?)):((.*)?)'.$this->tpl_rw_right.' /','',$data);
  46. $data = preg_replace('/'.$this->tpl_rw_left.'($( . *)?)|時間:(((.*)?))' .$this->tpl_rw_right.'/',"",$data) ;
  47. $data = preg_replace('/'.$this ->tpl_rw_left.'($(.*)?)'.$this->tpl_rw_right.'/',' ' ,$data);
  48. $arr ='';
  49. foreach($this->分配為$k=>$v) {
  50. if(!is_array($v)) {
  51. $ data = !is_numeric($v) ? 🎜> }else{
  52. $ arr.='';
  53. }
  54. }
  55. 回傳 file_put_contents($this->tpl_cache_dir.$this->cahce_format($tplfile),$arr.$data) ? 🎜>
  56. public function cahce_timeout($tplfile){
  57. $time = time();
  58. $filetime = fileatime($this->tpl_cache_dir.$this->cahce_format($4)); > return $time-$filetime > ($this->tpl_cache_time*60) ? 1 : 0;
  59. }
  60. public function cahce_format($tplfile){
  61. return md5($this->md5($this-md version()).str_replace('/','.',$tplfile ).'.php';
  62. }
  63. public function cache_delete($tplfile){
  64. return unlink($this ->tpl_cache_dir.$this->cahce_format($tplfile)) ? 1 : 0;
  65. }
  66. 私有函數錯誤($str){
  67. 返回退出($str);
  68. }
  69. 公用函數版本(){
  70. }
  71. 公用函數版本(){
  72. return 'wecis 2.0 RC';
  73. }
  74. }
  75. 複製程式碼
複製程式碼


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板