我不确定我的服务器上是否有sqlite,所以我想使用PDO对象来测试并查看服务器是否支持sqlite。我试过了:
<?php
echo `sqlite3 -v`;
收到以下错误:Warning: shell_exec() has been disabled for security reasons
答案 0 :(得分:10)
您可以使用function_exists()检查是否存在sqlite函数,如下所示:
if (function_exists('sqlite_open')) {
echo 'Sqlite PHP extension loaded';
}
答案 1 :(得分:6)
或者你可以简单地使用:
if (extension_loaded('sqlite3')) {
// Do things
}
答案 2 :(得分:2)
您的php.ini
已禁用
如果要直接运行shell命令,则需要在其中查找 shell_exec 。
可能在
之下disable_functions = ..., shell_exec, ...
答案 3 :(得分:1)
我实际上找到了一种测试方法,现在:
<?php
echo sqlite_libversion();
echo "<br>";
echo phpversion();
返回类似这样的内容:
2.8.17
5.2.17
答案 4 :(得分:1)
您的提供商是否支持sqlite3,那么您可以通过以下方式进行测试:
<?php
print_r(SQLite3::version());
?>
答案 5 :(得分:0)
对于 PHP 5.4.0及更高版本,接受的答案无法用作旧的SQLite扩展was dropped。
尝试以下方法:
if (class_exists('SQLite3')) {
echo 'Sqlite PHP extension loaded';
}