Hallo Raketenleichtmatrose,
tja, was heißt eleganter. Die Prüfungen müssen ja stattfinden.
Wäre dies hier für Dich eleganter? Hab's jetzt nicht wirklich durchgetestet 😉
function PDOSQLite3Connect ( $SQLite3File, $PDOReadOnly ) {
try
{
ensure( PDOReadOnly || is_writable( $SQLite3File ),
'(PDO): Datei "' . $SQLite3File - '" muss beschreibbar sein.' );
ensure( PDOReadOnly || is_writable( dirname( $SQLite3File ) ),
'(PDO): Verzeichnis "' . dirname( $SQLite3File ) - '" muss beschreibbar sein.' );
ensure( $pdo = new PDO( 'sqlite:' . $SQLite3File,
'Datenbankverbindung zu "sqlite:' . SQLite3File . '" hat nicht funktioniert.');
return $pdo;
}
catch (AssertionError $err)
{
errorLog( $err->getMessage() );
showErrorMsg();
}
}
function ensure( $condition, $message ) {
if ($condition)
return;
throw new AssertionError($message);
}
Rolf
--
sumpsi - posui - obstruxi
sumpsi - posui - obstruxi