phpversion () и sqlite_libversion () ничего не возвращают - PullRequest
0 голосов
/ 09 января 2012

Я нахожусь на корпоративном хостинге и пытаюсь проверить наличие sqlite.Я использую следующий код:

<?php
echo sqlite_libversion(), "\n", phpversion();
?>

Но я получаю пустую страницу.Я знаю, что PHP работает, потому что phpinfo() успешен, однако этого недостаточно, чтобы сказать мне, работает ли sqlite, поскольку sqlite.ini присутствует в phpinfo(), но не может найти другую информацию.

Я получаю доступ к серверу через FTP и заблокирован в веб-корне.Кто-нибудь знает, почему phpversion() и sqlite_libversion() ничего не возвращают?

Ответы [ 2 ]

2 голосов
/ 09 января 2012

Если SQLite недоступен, функция sqlite_libversion() даже не будет существовать и просто выдаст ошибку PHP:

Неустранимая ошибка: вызов неопределенной функции sqlite_libversion ()

Вам нужно использовать function_exists () , чтобы проверить, есть ли функция на самом деле.

Кроме того, вы должны настроить отчеты об ошибках, чтобы вы могли видеть сообщения об ошибках. У вас есть несколько способов сделать это:

  1. Отредактируйте файл php.ini:

    error_reporting = E_ALL | E_STRICT
    display_errors = On
    
  2. Поместите это поверх вашего скрипта:

    <?php
    
    error_reporting(E_ALL | E_STRICT);
    ini_set('display_errors', TRUE);
    
  3. Если PHP работает как модуль Apache, вы также можете использовать файл .htaccess:

    # Print E_ALL | E_STRICT from a PHP script to get the appropriate number:
    php_value error_reporting 2147483647
    php_flag display_errors on
    

Обновление:

Что вы получите, если запустите этот код и ничего больше?

<?php

error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', TRUE);

header('Content-Type: text/plain');

var_dump(phpversion());
if( function_exists('sqlite_libversion') ){
    var_dump(sqlite_libversion());
}

?>
0 голосов
/ 09 января 2012

убери эхо, просто сделай

<?php
     phpversion();
     sqlite_libversion();
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...