成员变量/常量

在使用 Sdopx 模板引擎开发中,我们需要了解的一些系统变量设置等等。

常量表:

常量名称 类型 可设置 默认值 说明
define    SDOPX_DIR
string No sdopxs所在目录 模板引擎安装的所在目录
Sdopx::VERSION string No 版本号 模板引擎的版本号
Sdopx::PARSING_HTML int No 1 模板解析类型,该值为解析html模板
Sdopx::PARSING_SQL int No 2 模板解析类型,该值为解析sql模板

 

静态成员变量:

变量名称 类型 可设置 默认值 说明
debug boolean Yes false 是否开启调试模式,开启后编译调试信息,方便呈现错误报告,上线需要关闭。
extension
string Yes '' 设置默认模板后缀,前面不带. 设置以后,模板中不使用后缀名称
defaultTemplateDirs
string|array Yes ./view 默认的模板目录,如果实例未设置模板目录,则使用该模板目录
defaultCompileDir
string Yes ./runtime 默认编译目录,如果实例未设置编译路径,则使用该目录

 

实例成员变量:

变量名称 类型 可设置 默认值 说明
leftDelimiter
string Yes { 仅单例更改,Sdopx语法左定界符
rightDelimiter
string Yes } 仅单例更改,Sdopx语法右定界符
compileForce
bool Yes false 仅单例更改,强制每次都重新编译,开启此选项性能会下降,正式上线请关闭此项
compileCheck
bool Yes true 仅单例更改,检查文件修改重新编译,正式上线可关闭此项,提高运行效率
_book
any Yes [] 存储变量的对象,可直接赋值,但不建议


在php-fpm 下使用:

define('ROOT_DIR', __DIR__);
date_default_timezone_set('PRC');
require(ROOT_DIR . '/vendor/autoload.php');


use sdopx\Sdopx;

Sdopx::$debug = true;
$sdopx = new Sdopx();
$sdopx->setTemplateDir('./view');
$sdopx->setCompileDir('./runtime');
//强制每次都编译,这样会严重降低性能,除非调试需要,不建议开启
$sdopx->compileForce = true;
$sdopx->assign('title', 'hello sdopx');
$sdopx->display('index.tpl');



在swoole 下使用:

<?php
require 'vendor/autoload.php';

use sdopx\Sdopx;

//开启调试信息
Sdopx::$debug = true;

$http = new \swoole_http_server("127.0.0.1", 9503);


$http->on('request', function ($request, $response) {
    //使用 $response 作为上下文传递给Sdopx ,当调用 display 的时候会执行 $response->end() 函数输出
    $tpl = new Sdopx($response);
    $tpl->setTemplateDir('./view');
    $tpl->setCompileDir('./runtime');
    //关闭检查编译,可以提高效率但是同时不再检查模板修改也不再编译
    $tpl->compileCheck = false;
    $tpl->assign('name', 'wj008');
    $tpl->display('index.tpl');
    //如果不传递上下文$response,或者上下文 end 方法不存在,可以使用 $code=$sdopx->fetch('index.tpl'); 返回模板内容,并自由输出
});

$http->start();

使用固定的后缀:

define('ROOT_DIR', __DIR__);
date_default_timezone_set('PRC');
require(ROOT_DIR . '/vendor/autoload.php');


use sdopx\Sdopx;

Sdopx::$extension = 'tpl';
Sdopx::$defaultTemplateDirs='./view';
//如果有多个 Sdopx::$defaultTemplateDirs=['./view','./template'];
Sdopx::$defaultCompileDir='./runtime';

$sdopx = new Sdopx();
$sdopx->assign('title', 'hello sdopx');
$sdopx->display('index');

当使用固定后缀,模板中 extends  和 include 中同样不带后缀。

上一篇:{cycle}交替输出
下一篇:成员方法
Copyright © 2021 海南的叶子 All Rights Reserved 琼ICP备2021000725号

琼公网安备 46900702000037号