本文整理匯總了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;
}