30 lines
851 B
Plaintext
30 lines
851 B
Plaintext
|
#!/usr/bin/env php
|
||
|
<?php
|
||
|
|
||
|
set_error_handler(
|
||
|
static function ($errno, $errstr, $errfile, $errline) {
|
||
|
$msg = "Error {$errno}: {$errstr}\n";
|
||
|
if ($errfile) {
|
||
|
$msg .= "File: {$errfile}\n";
|
||
|
if ($errline) {
|
||
|
$msg .= "Line: {$errline}\n";
|
||
|
}
|
||
|
}
|
||
|
fwrite(STDERR, $msg);
|
||
|
exit(1);
|
||
|
},
|
||
|
-1
|
||
|
);
|
||
|
|
||
|
$requiredHandlers = array_map('strtolower', [
|
||
|
'db4',
|
||
|
]);
|
||
|
$supportedHandlers = array_map('strtolower', dba_handlers(false));
|
||
|
$missingHandlers = array_diff($requiredHandlers, $supportedHandlers);
|
||
|
if ($missingHandlers !== []) {
|
||
|
sort($missingHandlers);
|
||
|
fwrite(STDERR, "DBA does NOT support these handlers:\n- " . implode("\n- ", $missingHandlers) . "\n");
|
||
|
exit(1);
|
||
|
}
|
||
|
echo "DBA supports at least these handlers:\n- ", implode("\n- ", $requiredHandlers), "\n";
|