本文整理汇总了PHP中JInstaller::parseSchemaUpdates方法的典型用法代码示例。如果您正苦于以下问题:PHP JInstaller::parseSchemaUpdates方法的具体用法?PHP JInstaller::parseSchemaUpdates怎么用?PHP JInstaller::parseSchemaUpdates使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JInstaller
的用法示例。
在下文中一共展示了JInstaller::parseSchemaUpdates方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: parseQueries
/**
* Method to parse the queries specified in the `<sql>` tags
*
* @return void
*
* @since 3.4
* @throws RuntimeException
*/
protected function parseQueries()
{
// Let's run the queries for the extension
if (in_array($this->route, array('install', 'discover_install', 'uninstall'))) {
// This method may throw an exception, but it is caught by the parent caller
if (!$this->doDatabaseTransactions()) {
throw new RuntimeException(JText::sprintf('JLIB_INSTALLER_ABORT_SQL_ERROR', JText::_('JLIB_INSTALLER_' . strtoupper($this->route)), $this->db->stderr(true)));
}
// Set the schema version to be the latest update version
if ($this->getManifest()->update) {
$this->parent->setSchemaVersion($this->getManifest()->update->schemas, $this->extension->extension_id);
}
} elseif ($this->route == 'update') {
if ($this->getManifest()->update) {
$result = $this->parent->parseSchemaUpdates($this->getManifest()->update->schemas, $this->extension->extension_id);
if ($result === false) {
// Install failed, rollback changes
throw new RuntimeException(JText::sprintf('JLIB_INSTALLER_ABORT_SQL_ERROR', JText::_('JLIB_INSTALLER_' . strtoupper($this->route)), $this->db->stderr(true)));
}
}
}
}