私の試み:
最初のファイル (connopen.php)
<?php
try {
$db = new PDO(DB_DSN, DBUSER, DB_PASSWORD);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
} catch (PDOException $e) {
die('Cannot connecto to database!');
}
try {
$db->beginTransaction();
その他のファイル (file1.php、file2.php ...)
<?php
include('connopen.php');
...some code using SQL(SELECT, INSERT INTO, UPDATE, DELETE ....)
include('connclose.php');
?>
最後のファイル (connclose.php)
<?php
$db->commit();
} catch (PDOException $e) {
$db->rollBack();
..some code to log errors
}
$db = null;
?>
このままでは、connopen.php でtry {を開始し、connclose.php で終了したため、エラー (解析エラー: 構文エラー、予期しない $end in /connopen.php on line 11) がスローされます。
ダブルトリプルコーディングを防ぐためにそのようなことをする別の方法があれば... connopenとconncloseのソースコードをいただければ幸いです。ありがとう