本文整理汇总了PHP中Horde_Db_Adapter::tables方法的典型用法代码示例。如果您正苦于以下问题:PHP Horde_Db_Adapter::tables方法的具体用法?PHP Horde_Db_Adapter::tables怎么用?PHP Horde_Db_Adapter::tables使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Horde_Db_Adapter
的用法示例。
在下文中一共展示了Horde_Db_Adapter::tables方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: doAction
/**
* Actually carry out the action.
*
* @return boolean True on success.
* @throws Ulaform_Exception
*/
public function doAction($form_params, $form_data, $fields)
{
/* Check if table exists. */
if (!in_array($form_params['table'], $this->_db->tables())) {
try {
$this->_createDataTable($form_params, $fields);
} catch (Horde_Db_Exception $e) {
throw new Ulaform_Exception($e->getMessage());
}
}
/* Submit data to database. */
$columns = array();
$values = array();
foreach ($fields as $field) {
switch ($field['field_type']) {
case 'file':
case 'image':
if (count($form_data[$field['field_name']])) {
$data = file_get_contents($form_data[$field['field_name']]['file']);
if (Horde_String::lower($this->_db->adapterName()) == 'pgsql') {
$data = bin2hex($data);
}
$columns[] = $field['field_name'];
$values[] = $data;
}
break;
case 'set':
$columns[] = $field['field_name'];
$values[] = implode(', ', $form_data[$field['field_name']]);
break;
default:
$data = $form_data[$field['field_name']];
$columns[] = $field['field_name'];
$values[] = Horde_String::convertCharset($data, 'UTF-8', $this->_charset);
break;
}
}
$sql = sprintf('INSERT INTO %s (%s) VALUES (%s)', $form_params['table'], implode(', ', $columns), str_repeat('?, ', count($values) - 1) . '?');
try {
$this->_db->insert($sql, $values);
} catch (Horde_Db_Exception $e) {
throw new Ulaform_Exception($e->getMessage());
}
return true;
}