<?php
/**
* Project: Smarty: the PHP compiling template engine
* File: Smarty_Compiler.class.php
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* @link http://smarty.php.net/
* @author Monte Ohrt <monte at ohrt dot com>
* @author Andrei Zmievski <[email protected]>
* @version 2.6.14
* @copyright 2001-2005 New Digital Group, Inc.
* @package Smarty
*/
/* $Id: Smarty_Compiler.class.php,v 1.381 2006/05/25 14:46:18 boots Exp $ */
/**
* Template compiling class
* @package Smarty
*/
class Smarty_Compiler extends Smarty {
// internal vars
/**#@+
* @access private
*/
var $_folded_blocks = array(); // keeps folded template blocks
var $_current_file = null; // the current template being compiled
var $_current_line_no = 1; // line number for error messages
var $_capture_stack = array(); // keeps track of nested capture buffers
var $_plugin_info = array(); // keeps track of plugins to load
var $_init_smarty_vars = false;
var $_permitted_tokens = array('true','false','yes','no','on','off','null');
var $_db_qstr_regexp = null; // regexps are setup in the constructor
var $_si_qstr_regexp = null;
var $_qstr_regexp = null;
var $_func_regexp = null;
var $_reg_obj_regexp = null;
var $_var_bracket_regexp = null;
var $_num_const_regexp = null;
var $_dvar_guts_regexp = null;
var $_dvar_regexp = null;
var $_cvar_regexp = null;
var $_svar_regexp = null;
var $_avar_regexp = null;
var $_mod_regexp = null;
var $_var_regexp = null;
var $_parenth_param_regexp = null;
var $_func_call_regexp = null;
var $_obj_ext_regexp = null;
var $_obj_start_regexp = null;
var $_obj_params_regexp = null;
var $_obj_call_regexp = null;
var $_cacheable_state = 0;
var $_cache_attrs_count = 0;
var $_nocache_count = 0;
var $_cache_serial = null;
var $_cache_include = null;
var $_strip_depth = 0;
var $_additional_newline = "\n";
/**#@-*/
/**
* The class constructor.
*/
function Smarty_Compiler()
{
// matches double quoted strings:
// "foobar"
// "foo\"bar"
$this->_db_qstr_regexp = '"[^"\\\\]*(?:\\\\.[^"\\\\]*)*"';
// matches single quoted strings:
// 'foobar'
// 'foo\'bar'
$this->_si_qstr_regexp = '\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\'';
// matches single or double quoted strings
$this->_qstr_regexp = '(?:' . $this->_db_qstr_regexp . '|' . $this->_si_qstr_regexp . ')';
// matches bracket portion of vars
// [0]
// [foo]
// [$bar]
$this->_var_bracket_regexp = '\[\$?[\w\.]+\]';
// matches numerical constants
// 30
// -12
// 13.22
$this->_num_const_regexp = '(?:\-?\d+(?:\.\d+)?)';
// matches $ vars (not objects):
// $foo
// $foo.bar
// $foo.bar.foobar
// $foo[0]
// $foo[$bar]
// $foo[5][blah]
// $foo[5].bar[$foobar][4]
$this->_dvar_math_regexp = '(?:[\+\*\/\%]|(?:-(?!>)))';
$this->_dvar_math_var_regexp = '[\$\w\.\+\-\*\/\%\d\>\[\]]';
$this->_dvar_guts_regexp = '\w+(?:' . $this->_var_bracket_regexp
. ')*(?:\.\$?\w+(?:' . $this->_var_bracket_regexp . ')*)*(?:' . $this->_dvar_math_regexp . '(?:' . $this->_num_const_regexp . '|' . $this->_dvar_math_var_regexp . ')*)?';
$this->_dvar_regexp = '\$' . $this->_dvar_guts_regexp;
// matches config vars:
// #foo#
// #foobar123_foo#
$this->_cvar_regexp = '\#\w+\#';
// matches section vars:
// %foo.bar%
$this->_svar_regexp = '\%\w+\.\w+\%';
// matches all valid variables (no quotes, no modifiers)
$this->_avar_regexp = '(?:' . $this->_dvar_regexp . '|'
. $this->_cvar_regexp . '|' . $this->_svar_regexp . ')';
// matches valid variable syntax:
// $foo
// $foo
// #foo#
// #foo#
// "text"
// "text"
$this->_var_regexp = '(?:' . $this->_avar_regexp . '|' . $this->_qstr_regexp . ')';
// matches valid object call (one level of object nesting allowed in parameters):
// $foo->bar
// $foo->bar()
// $foo->bar("text")
// $foo->bar($foo, $bar, "text")
// $foo->bar($foo, "foo")
// $foo->bar->foo()
// $foo->bar->foo->bar()
// $foo->bar($foo->bar)
// $foo->bar($foo->bar())
// $foo->bar($foo->bar($blah,$foo,44,"foo",$foo[0].bar))
$this->_obj_ext_regexp = '\->(?:\$?' . $this->_dvar_guts_regexp . ')';
$this->_obj_restricted_param_regexp = '(?:'
. '(?:' . $this->_var_regexp . '|' . $this->_num_const_regexp . ')(?:' . $this->_obj_ext_regexp . '(?:\((?:(?:' . $this->_var_regexp . '|' . $this->_num_const_regexp . ')'
. '(?:\s*,\s*(?:' . $this->_var_regexp . '|' . $this->_num_const_regexp . '))*)?\))?)*)';
$this->_obj_single_param_regexp = '(?:\w+|' . $this->_obj_restricted_param_regexp . '(?:\s*,\s*(?:(?:\w+|'
. $this->_var_regexp . $this->_obj_restricted_param_regexp . ')))*)';
$this->_obj_params_regexp = '\((?:' . $this->_obj_single_param_regexp
. '(?:\s*,\s*' . $this->_obj_single_param_regexp . ')*)?\)';
$this->_obj_start_regexp = '(?:' . $this->_dvar_regexp . '(?:' . $this->_obj_ext_regexp . ')+)';
$this->_obj_call_regexp = '(?:' . $this->_obj_start_regexp . '(?:' . $this->_obj_params_regexp . ')?(?:' . $this->_dvar_math_regexp . '(?:' . $this->_num_const_regexp . '|' . $this->_dvar_math_var_regexp . ')*)?)';
// matches valid modifier syntax:
// |foo
// |@foo
// |foo:"bar"
// |foo:$bar
// |foo:"bar":$foobar
// |foo|bar
// |foo:$foo->bar
$this->_mod_regexp = '(?:\|@?\w+(?::(?:\w+|' . $this->_num_const_regexp . '|'
. $this->_obj_call_regexp . '|' . $this->_avar_regexp . '|' . $this->_qstr_regexp .'))*)';
// matches valid function name:
// foo123
// _foo_bar
$this->_func_regexp = '[a-zA-Z_]\w*';
// matches valid registered object:
// foo->bar
$this->_reg_obj_regexp = '[a-zA-Z_]\w*->[a-zA-Z_]\w*';
// matches valid parameter values:
// true
// $foo
// $foo|bar
// #foo#
// #foo#|bar
// "text"
// "text"|bar
// $foo->bar
$this->_param_regexp = '(?:\s*(?:' . $this->_obj_call_regexp . '|'
. $this->_var_regexp . '|' . $this->_num_const_regexp . '|\w+)(?>' . $this->_mod_regexp . '*)\s*)';
// matches valid parenthesised function parameters:
//
// "text"
// $foo, $bar, "text"
// $foo|bar, "foo"|bar, $foo->bar($foo)|bar
$this->_parenth_param_regexp = '(?:\((?:\w+|'
.
没有合适的资源?快使用搜索试试~ 我知道了~
OA.rar_MYOIS_crm php_oa HR php_php web oa_框架
共1126个文件
js:503个
gif:266个
php:158个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 200 浏览量
2022-09-23
11:10:43
上传
评论
收藏 2.3MB RAR 举报
温馨提示
一个使用PHP作为开发语言的B/S模式信息管理软件系统。MYOIS包括了PHP开发框架、WEB UI组件,应用程序软件模块的一个软件系统,但并不是一个真正的应用软件,但由其中的模块组合及再通过二次开发就可以派生出多个软件,比如OA,CRM, HR,CMS等。MYOIS和开发框架相比是在开发框架之上已经开发了现成的应用模块并可以使用,并拥有丰富的模块程序,它是在应用软件之上的系统,而开发框架是在应用软件之下的程序代码
资源推荐
资源详情
资源评论
收起资源包目录
OA.rar_MYOIS_crm php_oa HR php_php web oa_框架 (1126个子文件)
COPYING 19KB
ext-all.css 75KB
grid.css 13KB
form.css 10KB
xtheme-gray.css 9KB
panel.css 8KB
style.css 7KB
tabs.css 7KB
grid.css 7KB
basic-dialog.css 6KB
core.css 6KB
tree.css 6KB
date-picker.css 5KB
layout.css 5KB
toolbar.css 5KB
window.css 4KB
button.css 4KB
resizable.css 4KB
qtips.css 3KB
menu.css 3KB
box.css 3KB
editor.css 2KB
dialog.css 2KB
dd.css 2KB
combo.css 1KB
borders.css 1KB
common.css 1KB
progress.css 941B
debug.css 864B
reset-min.css 473B
reset.css 473B
Thumbs.db 7KB
dlg-bg.gif 27KB
tip-sprite.gif 4KB
tip-sprite.gif 4KB
error-tip-corners.gif 4KB
tip-sprite.gif 4KB
tool-sprites.gif 4KB
tool-sprites.gif 4KB
loading.gif 3KB
large-loading.gif 3KB
blue-loading.gif 3KB
tab-sprite.gif 3KB
tools-sprites-trans.gif 3KB
tools-sprites-trans.gif 3KB
search-trigger.gif 2KB
tabs-sprite.gif 2KB
loading-balls.gif 2KB
tabs-sprite.gif 2KB
tb-sprite.gif 2KB
clear-trigger.gif 2KB
trigger.gif 2KB
icon-error.gif 2KB
icon-error.gif 2KB
tab-btm-inactive-right-bg.gif 2KB
tab-btm-right-bg.gif 2KB
icon-question.gif 2KB
icon-question.gif 2KB
date-trigger.gif 2KB
icon-info.gif 2KB
e-handle.gif 2KB
e-handle.gif 2KB
icon-info.gif 2KB
trigger-tpl.gif 1KB
icon-warning.gif 1KB
icon-warning.gif 1KB
gradient-bg.gif 1KB
gradient-bg.gif 1KB
gradient-bg.gif 1KB
gradient-bg.gif 1KB
corners-sprite.gif 1KB
corners-sprite.gif 1KB
tab-btm-right-bg.gif 1KB
tab-btm-right-bg.gif 1KB
tab-btm-inactive-right-bg.gif 1KB
tab-btm-inactive-right-bg.gif 1KB
white-corners-sprite.gif 1KB
white-corners-sprite.gif 1KB
btn-sprite.gif 1KB
s-handle.gif 1KB
s-handle.gif 1KB
scroll-right.gif 1KB
scroll-left.gif 1KB
scroll-right.gif 1KB
scroll-left.gif 1KB
grid3-hd-btn.gif 1KB
btn-sprite.gif 1KB
gradient-bg.gif 1KB
tb-btn-sprite.gif 1KB
tb-btn-sprite.gif 1KB
wait.gif 1KB
scroller-bg.gif 1KB
hd-sprite.gif 1KB
bg.gif 1KB
bg.gif 1KB
scroller-bg.gif 1KB
row-check-sprite.gif 1KB
e-handle-dark.gif 1KB
e-handle-dark.gif 1KB
s-handle-dark.gif 1KB
共 1126 条
- 1
- 2
- 3
- 4
- 5
- 6
- 12
资源评论
JonSco
- 粉丝: 72
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功