本文整理汇总了PHP中Parse::parse_cssjs方法的典型用法代码示例。如果您正苦于以下问题:PHP Parse::parse_cssjs方法的具体用法?PHP Parse::parse_cssjs怎么用?PHP Parse::parse_cssjs使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Parse
的用法示例。
在下文中一共展示了Parse::parse_cssjs方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: get_mode_info
public function get_mode_info($id, $cell_id = '', $css_id = '', $js_id = '', $param = array())
{
$ret = array();
$sql = "SELECT * FROM " . DB_PREFIX . "cell_mode WHERE id = " . $id;
$mode_info = $this->db->query_first($sql);
$mode_info['default_param'] = $mode_info['default_param'] ? unserialize($mode_info['default_param']) : array();
$sql = "SELECT * FROM " . DB_PREFIX . "cell_mode_variable WHERE cell_mode_id=" . $id;
$info = $this->db->query($sql);
$mode_param = $data_param = array();
while ($row = $this->db->fetch_array($info)) {
if ($row['type'] == 'select') {
$row['other_value'] = hg_string_to_array($row['other_value']);
}
###合并参数
$row['name'] = $row['name'] ? $row['name'] : $row['sign'];
$row['value'] = isset($param['mode_param'][$row['sign']]) ? $param['mode_param'][$row['sign']] : $row['default_value'];
$mode_param[$row['id']] = $row;
}
$sql = "SELECT * FROM " . DB_PREFIX . "cell_mode_code WHERE mode_id = " . $id . " AND type='js' AND del = 0 ";
$mode_js_info = $this->db->query_first($sql);
if ($mode_js_info) {
$mode_js_info['para'] = unserialize($mode_js_info['para']);
if (is_array($mode_js_info['para']) && count($mode_js_info['para']) > 0) {
$relation = array();
foreach ($mode_js_info['para'] as $k => $v) {
$v['js_other_value'] = hg_string_to_array($v['js_other_value']);
###合并参数
$v['js_value'] = isset($param['js_param'][$v['js_sign']]) ? $param['js_param'][$v['js_sign']] : $v['js_default_value'];
### 重新复制 使返回值名称统一
$variables[$v['js_sign']] = array('name' => $v['js_name'] ? $v['js_name'] : $v['js_sign'], 'sign' => $v['js_sign'], 'type' => $v['js_type'], 'other_value' => $v['js_other_value'], 'default_value' => $v['js_default_value'], 'value' => $v['js_value']);
$relation[$v['js_sign']] = $v['js_value'];
}
$ret['js_param'] = $variables;
}
$mode_js_info['code'] = html_entity_decode($mode_js_info['code'], ENT_QUOTES);
if ($mode_js_info['code']) {
if (!class_exists('Parse')) {
include_once CUR_CONF_PATH . 'lib/parse.class.php';
}
$parse = new Parse();
$parse->parse_cssjs($mode_js_info['code'], $relation);
$ret['js'] = $parse->built_cssjs($cell_id . '_' . $id . '_js' . '.php', true);
}
}
$sql = "SELECT * FROM " . DB_PREFIX . "out_variable WHERE mod_id = 2 AND flag = 0 AND expand_id = " . $id;
$q = $this->db->query($sql);
while ($row = $this->db->fetch_array($q)) {
$row['fuction_value'] = unserialize($row['fuction_value']);
$row['fuction_value'] = $row['fuction_value'] ? $row['fuction_value'] : array();
$row['fuction_value'] = implode("','", $row['fuction_value']);
$row['fuction_value'] = "'" . $row['fuction_value'] . "'";
$data_param[$row['id']] = $row;
}
###css处理 js处理 命名空间替换、参数替换、格式化参数格式确保参数格式统一
if ($css_id) {
$sql = "SELECT * FROM " . DB_PREFIX . "cell_mode_code WHERE id = " . intval($css_id) . " AND del = 0 ";
$q = $this->db->query($sql);
while ($row = $this->db->fetch_array($q)) {
$prefix = $row['type'];
$relation = $variables = array();
$row['para'] = unserialize($row['para']);
if (is_array($row['para']) && count($row['para']) > 0) {
foreach ($row['para'] as $k => $v) {
$v[$prefix . '_other_value'] = hg_string_to_array($v[$prefix . '_other_value']);
###合并参数
$v[$prefix . '_value'] = isset($param[$prefix . '_param'][$v[$prefix . '_sign']]) ? $param[$prefix . '_param'][$v[$prefix . '_sign']] : $v[$prefix . '_default_value'];
### 重新复制 使返回值名称统一
$variables[$v[$prefix . '_sign']] = array('name' => $v[$prefix . '_name'] ? $v[$prefix . '_name'] : $v[$prefix . '_sign'], 'sign' => $v[$prefix . '_sign'], 'type' => $v[$prefix . '_type'], 'other_value' => $v[$prefix . '_other_value'], 'default_value' => $v[$prefix . '_default_value'], 'value' => $v[$prefix . '_value']);
$relation[$v[$prefix . '_sign']] = $v[$prefix . '_value'];
}
}
$ret[$prefix . '_code'] = html_entity_decode($row['code']);
$ret[$prefix . '_param'] = $variables;
if ($ret[$prefix . '_code']) {
if (!class_exists('Parse')) {
include_once CUR_CONF_PATH . 'lib/parse.class.php';
}
$parse = new Parse();
$parse->parse_cssjs($ret[$prefix . '_code'], $relation);
$ret[$prefix] = $parse->built_cssjs($cell_id . '_' . $id . '_' . $prefix . '.php', true);
}
}
}
###css,js处理处理结束
##取样式的css列表
$sql = "SELECT * FROM " . DB_PREFIX . "cell_mode_code WHERE mode_id = " . $id . " AND (cell_id = " . $cell_id . " OR cell_id = 0 ) AND type='css' AND del = 0 ";
$q = $this->db->query($sql);
$ret['css_list'] = array();
while ($row = $this->db->fetch_array($q)) {
$prefix = $row['type'];
$row['para'] = unserialize($row['para']);
if (is_array($row['para']) && count($row['para']) > 0) {
$tmp = array();
foreach ($row['para'] as $k => $v) {
$v[$prefix . '_other_value'] = hg_string_to_array($v[$prefix . '_other_value']);
$tmp[$v[$prefix . '_sign']] = array('name' => $v[$prefix . '_name'] ? $v[$prefix . '_name'] : $v[$prefix . '_sign'], 'sign' => $v[$prefix . '_sign'], 'type' => $v[$prefix . '_type'], 'other_value' => $v[$prefix . '_other_value'], 'default_value' => $v[$prefix . '_default_value'], 'value' => $v[$prefix . '_default_value']);
}
$row['para'] = $tmp;
}
// $ret[$prefix . '_list'][$row['id']] = $row;
//.........这里部分代码省略.........