通过PHP文件测试服务器sqlite的最快方法?

时间:2012-11-05 09:15:13

标签: php sqlite pdo

我不确定我的服务器上是否有sqlite,所以我想使用PDO对象来测试并查看服务器是否支持sqlite。我试过了:

<?php
echo `sqlite3 -v`;

收到以下错误:Warning: shell_exec() has been disabled for security reasons

6 个答案:

答案 0 :(得分:10)

您可以使用function_exists()检查是否存在sqlite函数,如下所示:

if (function_exists('sqlite_open')) {
   echo 'Sqlite PHP extension loaded';
}

答案 1 :(得分:6)

或者你可以简单地使用:

if (extension_loaded('sqlite3')) {
    // Do things
}

http://php.net/manual/en/function.extension-loaded.php

答案 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());

?>

也请查阅手册:https://www.php.net/manual/en/book.sqlite3.php

答案 5 :(得分:0)

对于 PHP 5.4.0及更高版本,接受的答案无法用作旧的SQLite扩展was dropped

尝试以下方法:

if (class_exists('SQLite3')) {
   echo 'Sqlite PHP extension loaded';
}

或改用extension_loaded('sqlite3')