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


PHP Db::showTables方法代码示例

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


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

示例1: back

 /**
  * Makes a SQL contents backup.
  *
  * @access public
  * @return object this
  */
 public function back()
 {
     $this->_sSql = "#################### Database Backup ####################\n" . '# ' . Kernel::SOFTWARE_NAME . ' ' . Kernel::SOFTWARE_VERSION . ', Build ' . Kernel::SOFTWARE_BUILD . "\r\n" . '# Database name: ' . Config::getInstance()->values['database']['name'] . "\r\n" . '# Created on ' . (new CDateTime())->get()->dateTime() . "\r\n" . "#########################################################\r\n\r\n";
     $aTables = $aColumns = $aValues = array();
     $oAllTables = Db::showTables();
     while ($aRow = $oAllTables->fetch()) {
         $aTables[] = $aRow[0];
     }
     unset($oAllTables);
     $oDb = Db::getInstance();
     // Loop through tables
     foreach ($aTables as $sTable) {
         $oResult = $oDb->query('SHOW CREATE TABLE ' . $sTable);
         $iNum = (int) $oResult->rowCount();
         if ($iNum > 0) {
             $aRow = $oResult->fetch();
             $this->_sSql .= "#\n# Table: {$sTable}\r\n#\r\n\r\n";
             $this->_sSql .= "DROP TABLE IF EXISTS {$sTable};\r\n\r\n";
             $sValue = $aRow[1];
             /*** Clean up statement ***/
             $sValue = str_replace('`', '', $sValue);
             /*** Table structure ***/
             $this->_sSql .= $sValue . ";\r\n\r\n";
             unset($aRow);
         }
         unset($oResult);
         $oResult = $oDb->query('SELECT * FROM ' . $sTable);
         $iNum = (int) $oResult->rowCount();
         if ($iNum > 0) {
             while ($aRow = $oResult->fetch()) {
                 foreach ($aRow as $sColumn => $sValue) {
                     if (!is_numeric($sColumn)) {
                         if (!is_numeric($sValue) && !empty($sValue)) {
                             $sValue = Db::getInstance()->quote($sValue);
                         }
                         $sValue = str_replace(array("\r", "\n"), array('', '\\n'), $sValue);
                         $aColumns[] = $sColumn;
                         $aValues[] = $sValue;
                     }
                 }
                 $this->_sSql .= 'INSERT INTO ' . $sTable . ' (' . implode(', ', $aColumns) . ') VALUES(\'' . implode('\', \'', $aValues) . "');\n";
                 unset($aColumns, $aValues);
             }
             $this->_sSql .= "\r\n\r\n";
             unset($aRow);
         }
         unset($oResult);
     }
     unset($oDb);
     return $this;
 }
开发者ID:nsrau,项目名称:pH7-Social-Dating-CMS,代码行数:57,代码来源:Backup.class.php


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