基本的な利用方法
$configArray = array(
'driver' => 'Mysqli',
'database' => 'zend_db_example',
'username' => 'developer',
'password' => 'developer-password',
'charset' => 'utf8',
'options' => array('buffer_results' => true)
);
$adapter = new Zend\Db\Adapter\Adapter($configArray);
$adapter = new Zend\Db\Adapter\Adapter(array(
'driver' => 'Mysqli',
'database' => 'zend_db_example',
'username' => 'developer',
'password' => 'developer-password',
'charset' => 'utf8',
'options' => array('buffer_results' => true)
));
設定
| Key | 必須項目 | 値 |
| driver | 必須 | Mysqli, Sqlsrv, Pdo_Sqlite, Pdo_Mysql, Pdo=OtherPdoDriver |
| database | 一般的に必須 | データベース名 |
| username | 一般的に必須 | 接続ユーザ名 |
| password | 一般的に必須 | 接続パスワード |
| hostname | 環境によっては必須 | IPアドレスもしくはホスト名 |
| port | 環境によっては必須 | 接続ポート番号 |
| charset | 環境によっては必須 | 利用する文字コード |
| options | 任意 | 現在mysqliのみサポート |
| platform_options | 任意 | 現在IbmDb2とOracleのみサポート |
options値
| Key | 必須項目 | 値 |
| buffer_results | 任意 | 結果をバッファーするか(Mysqli) |
platform_options値
| Key | 必須項目 | 値 |
| quote_identifiers | 任意 | (IbmDb2とOracle) |
| identifier_separator | 任意 | (IbmDb2) |
Sqlの生成
sqlクラス
データベースの操作
直接SQLを記述
array(5)
tableGatewayクラスの利用
トランザクション処理
// トランザクション開始
$adapter->getDriver()->getConnection()->beginTransaction();
try {
// SQL処理
// コミット処理
$adapter->getDriver()->getConnection()->commit();
} catch (\Exception $e) {
// 何らかの例外発生で処理失敗
// ロールバック処理
$adapter->getDriver()->getConnection()->rollback();
}