サーバーに sqlite があるかどうかわからないので、PDO オブジェクトを使用してテストし、サーバーが sqlite をサポートしているかどうかを確認したいと考えています。私は試した:
<?php
echo `sqlite3 -v`;
次のエラーが発生しました:Warning: shell_exec() has been disabled for security reasons
または、単に使用できます:
if (extension_loaded('sqlite3')) {
// Do things
}
次のように、 function_exists()を使用して、sqlite 関数が存在するかどうかを確認できます。
if (function_exists('sqlite_open')) {
echo 'Sqlite PHP extension loaded';
}
前者は機能しないためSQLite3
、代わりにこれを使用してください(Pridのコメントの礼儀):
if (class_exists('SQLite3')) {
echo 'SQLite3 extension loaded';
}
シェルコマンドを直接実行したい場合は、その中のshell_execphp.ini
を探す必要があります。
下かもね
disable_functions = ..., shell_exec, ...
私は実際にこれをテストする方法を見つけました:
<?php
echo sqlite_libversion();
echo "<br>";
echo phpversion();
次のようなものを返します。
2.8.17
5.2.17