当前位置: 首页>>代码示例>>PHP>>正文


PHP Dwoo_Compiler::setDelimiters方法代码示例

本文整理汇总了PHP中Dwoo_Compiler::setDelimiters方法的典型用法代码示例。如果您正苦于以下问题:PHP Dwoo_Compiler::setDelimiters方法的具体用法?PHP Dwoo_Compiler::setDelimiters怎么用?PHP Dwoo_Compiler::setDelimiters使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Dwoo_Compiler的用法示例。


在下文中一共展示了Dwoo_Compiler::setDelimiters方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: __construct

 public function __construct()
 {
     parent::__construct();
     $compiler = new Dwoo_Compiler();
     $compiler->setDelimiters('<?', '?>');
     // add preprocessor
     // add custom plugins, functions, blocks, etc
     $this->setCompiler($compiler);
     $this->setCompileDir(PROJECT_RUNTIME . '/' . $type . '_c');
     $this->assign('this', $page);
     $this->assign('context', $context);
 }
开发者ID:rudiedirkx,项目名称:CMS1,代码行数:12,代码来源:inc.cls.dwootpl.php

示例2: unlink

$g_objAdmin->checkEditViewAccess();
$objView = AROView::finder()->byPK($_REQUEST['id']);
$szViewFile = PROJECT_VIEWS . '/' . $objView->id . '.php';
if (!empty($_GET['deleteme'])) {
    $objView->delete();
    unlink($szViewFile);
    header('Location: ../');
    exit;
} else {
    if (isset($_POST['title'], $_POST['content'], $_POST['type'])) {
        require_once PROJECT_INCLUDE . '/Dwoo-1.1.1/Dwoo/dwooAutoload.php';
        $template_source = $_POST['content'];
        $template = new Dwoo_Template_String($template_source);
        $dwoo = new Dwoo();
        $compiler = new Dwoo_Compiler();
        $compiler->setDelimiters('<?', '?>');
        $dwoo->setCompiler($compiler);
        try {
            $compiled_template_source = $dwoo->testTemplate($template);
            //	echo '<pre>'.htmlspecialchars($template_source).'</pre>';
            //	echo '<p>is a valid template:</p>';
            //	exit('<pre>'.htmlspecialchars(file_get_contents($compiled_template_source)).'</pre>');
        } catch (Dwoo_Exception $exc) {
            echo '<pre style="background-color:pink;">' . htmlspecialchars($template_source) . '</pre>';
            echo '<p>is NOT a valid template:</p>';
            exit('<pre style="background-color:pink;">' . $exc->getMessage() . '</pre>');
        }
        $objView->title = $_POST['title'];
        $objView->type = implode(',', $_POST['type']);
        $objView->save();
        file_put_contents($szViewFile, $_POST['content']);
开发者ID:rudiedirkx,项目名称:CMS1,代码行数:31,代码来源:edit.php

示例3: _parse_compiled

    /**
     *  Parse
     *
     * Parses pseudo-variables contained in the specified template,
     * replacing them with the data in the second param
     *
     * @access	public
     * @param	string
     * @param	array
     * @param	bool
     * @param	string
     * @return	string
     */
    public function _parse_compiled($string, $data, $return = FALSE, $cache_id = NULL)
    {
        // Start benchmark
        $this->_ci->benchmark->mark('dwoo_parse_start');
        // Convert from object to array
        if (!is_array($data)) {
            $data = (array) $data;
        }
        $data = array_merge($this->_ci->load->get_vars(), $data);
        foreach ($this->_parser_assign_refs as $ref) {
            $data[$ref] =& $this->_ci->{$ref};
        }
        // Object containing data
        $dwoo_data = new Dwoo_Data();
        $dwoo_data->setData($data);
        $parsed_string = '';
        try {
            // Object of the template
            $tpl = new Dwoo_Template_String($string, NULL, $cache_id, NULL);
            $dwoo = !isset($this->_dwoo) ? self::spawn() : $this->_dwoo;
            // check for existence of dwoo object... may not be there if folder is not writable
            // added by David McReynolds @ Daylight Studio 1/20/11
            if (!empty($dwoo)) {
                // Create the compiler instance
                $compiler = new Dwoo_Compiler();
                // added by David McReynolds @ Daylight Studio 1/22/12
                $compiler->setDelimiters($this->l_delim, $this->r_delim);
                //Add a pre-processor to help fix javascript {}
                // added by David McReynolds @ Daylight Studio 11/04/10
                $callback = create_function('$compiler', '
					$string = $compiler->getTemplateSource();
					
					$callback = create_function(\'$matches\',
						\'if (isset($matches[1]))
						{
							$str = "<script";
							$str .= preg_replace("#\\' . $this->l_delim . '([^s])#ms", "' . $this->l_delim . ' $1", $matches[1]);
							$str .= "</script>";
							return $str;
						}
						else
						{
							return $matches[0];
						}
						\'
						);

					$string = preg_replace_callback("#<script(.+)</script>#Ums", $callback, $string);
					$compiler->setTemplateSource($string);
					return $string;
				');
                $compiler->addPreProcessor($callback);
                // render the template
                $parsed_string = $dwoo->get($tpl, $dwoo_data, $compiler);
            } else {
                // load FUEL language file because it has the proper error
                // added by David McReynolds @ Daylight Studio 1/20/11
                $this->_ci->load->module_language(FUEL_FOLDER, 'fuel');
                throw new Exception(lang('error_folder_not_writable', $this->_ci->config->item('cache_path')));
            }
        } catch (Exception $e) {
            if (strtolower(get_class($e)) == 'dwoo_exception') {
                echo '<div class="error">' . $e->getMessage() . '</div>';
            } else {
                show_error($e->getMessage());
            }
        }
        // Finish benchmark
        $this->_ci->benchmark->mark('dwoo_parse_end');
        // Return results or not ?
        if (!$return) {
            $this->_ci->output->append_output($parsed_string);
            return;
        }
        return $parsed_string;
    }
开发者ID:kbjohnson90,项目名称:FUEL-CMS,代码行数:89,代码来源:MY_Parser.php


注:本文中的Dwoo_Compiler::setDelimiters方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。