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


PHP tpl::singleton方法代码示例

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


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

示例1: __construct

 /**
  * 控制器构造函数
  *
  * 当子类实现自己的控制器构造函数时,必须在构造函数体内第一行调用: parent::__construct();
  */
 function __construct()
 {
     global $__core_env;
     $rand = rand(1000, 9999);
     $__core_env['__LIUSHUIHAO__'] = time() . $UID . $rand;
     $this->__out =& $__core_env['out'];
     $this->_tpl = tpl::singleton();
 }
开发者ID:srdc2014,项目名称:vhms,代码行数:13,代码来源:control.php

示例2: init

 /**
  * 
  * 初始化一个节点
  * @param $node 节点名称
  * @param $level 初始化级别
  * 0   全部(首次初始化开始)
  * 1  除首次初始化全部
  * @deprecated vhms上不应该调用这个方法
  */
 public function init($node, $config_flag, $init_flag, $reboot_flag)
 {
     trigger_error('init方法废弃');
     $node_cfg = $GLOBALS['node_cfg'][$node];
     $whm = $this->makeWhm($node);
     $result = true;
     if ($config_flag == 1) {
         /*
          * 生成数据库连接文件etc/vh_db.xml
          * 这个文件为什么要放到etc呢?而不放到ext下面?
          * 问得好!权限问题,数据库连接文件包含重要的密码信息,要确保除超级用户外无人可访问。
          * 而ext目录下面是扩展目录,普通用户需要读和运行的权限。
          * 我们可以在ext/templete.xml放入一条<!--#include etc/vh_db.xml -->,把数据库连接文件包含进来.
          * 这样就可以加载etc/vh_db.xml文件了。
          */
         $driver = "bin/vhs_sqlite";
         $win = $node_cfg['win'];
         if ($win) {
             $driver .= ".dll";
         } else {
             $driver .= ".so";
         }
         //$phpmyadmin_password = getRandPasswd(12);
         $tpl = tpl::singleton();
         //$tpl->assign('phpmyadmin_password',$phpmyadmin_password);
         $tpl->assign('win', $win);
         $tpl->assign('skey', $GLOBALS['skey']);
         $tpl->assign('node', $node);
         $tpl->assign('driver', $driver);
         $tpl->assign('node_db', $GLOBALS['node_db']);
         if ($GLOBALS['node_db'] != 'sqlite') {
             $tpl->assign('col_map', daocall('vhost', 'getColMap', array($node)));
             $tpl->assign('load_sql', daocall('vhost', 'getLoadSql', array($node)));
             $tpl->assign('flush_sql', daocall('vhost', 'getFlushSql', array(null)));
             $tpl->assign('load_info_sql', daocall('vhostinfo', 'getLoadInfoSql', array(null)));
             $tpl->assign('table', daocall('vhost', 'getTable'));
             $tpl->assign('col', daocall('vhost', 'getCols'));
             global $db_cfg;
             if ($db_cfg['ftp']) {
                 $db = $db_cfg['ftp'];
             } else {
                 $db = $db_cfg['default'];
             }
             $db_local = $this->isLocalHost($db['host']);
             $node_local = $this->isLocalHost($node_cfg['host']);
             if ($db_local && !$node_local) {
                 $host = $_SERVER['SERVER_ADDR'];
                 if ($host == "") {
                     $host = $_SERVER['SERVER_NAME'];
                 }
                 if ($host == "" || $this->isLocalHost($host)) {
                     trigger_error("Cann't init node,I Cann't translate the db host.");
                     return false;
                 }
                 //如果db host是local,而节点不是local,则要替换db的host为公网IP
                 $db['host'] = $host;
             }
             $tpl->assign('db', $db);
         }
         $tpl->assign('dev', $node_cfg['dev']);
         $whmCall = new WhmCall('core.whm', 'write_file');
         $whmCall->addParam('file', 'etc/vh_db.xml');
         $content = $tpl->fetch('config/vh_db.xml');
         $whmCall->addParam('content', base64_encode($content));
         $result = $whm->call($whmCall);
         /*
          * 写入模板文件,etc/templete.xml
          */
         $content = $tpl->fetch('config/templete.xml');
         $whmCall = new WhmCall('core.whm', 'write_file');
         $whmCall->addParam('file', 'ext/templete.xml');
         $whmCall->addParam('content', base64_encode($content));
         $result = $whm->call($whmCall);
         /*
          * 写入ftp配置文件
          */
         $whmCall = new WhmCall('core.whm', 'write_file');
         if ($win) {
             $content = $tpl->fetch('config/linxftp.conf');
             $whmCall->addParam('file', 'etc/linxftp.conf');
         } else {
             $content = $tpl->fetch('config/proftpd.conf');
             $whmCall->addParam('file', '/vhs/proftpd/etc/proftpd.conf');
         }
         $whmCall->addParam('content', base64_encode($content));
         $result = $whm->call($whmCall);
         /*
          * 写do_config.php
          */
         $content = $tpl->fetch('config/db_config.conf');
         $whmCall = new WhmCall('core.whm', 'write_file');
//.........这里部分代码省略.........
开发者ID:srdc2014,项目名称:vhms,代码行数:101,代码来源:nodes.api.php


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