Хотя я отлаживаю PHP Script в Eclipse, он не загружает расширение mysql

Я установил Eclipse и xDebug на Ubuntu 10.10.
Когда я отлаживаю некоторый php-файл как страницу, это отлично работает.
Когда я пытаюсь отладить его как скрипт, я сообщаю, что расширение mysql не загружается.
Я установил следующие параметры для исполняемого файла PHP:

  • Исполняемый путь: / usr / bin / php
  • PHP-файл ini: /etc/php5/apache2/php.ini
  • Тип SAPI: CLI
  • Отладчик PHP: XDebug

Я написал следующий скрипт:

test.php
<?php
$ext = get_loaded_extensions();
print_r($ext);
?>

Когда я помещаю в командной строке / usr / bin / php test.php
Я даю 50 загруженных модулей, включая mysql и mysqli.
Когда я отлаживаю его как страницу в Eclipse, я предоставляю те же модули и xdebug.
Когда я отлаживаю его как страницу в Eclipse, я даю 45 модулей, включая xdebug, но mysql и mysqli не загружаются.

после борьбы с этой проблемой в течение нескольких часов сегодня, я решил вручную cat всю информацию внутри одного файла .ini и запустить eclipse с помощью eclipse -clean . что-то вроде следующего скрипта должно сделать трюк:

 #!/bin/bash mkdir /etc/php5/cli_eclipse cat /etc/php5/cli/php.ini /etc/php5/conf.d/* > /etc/php5/cli_eclipse/php.ini 

(вы, очевидно, можете проверить, существует ли существующий каталог и т. д., но этот сценарий здесь только для иллюстративных целей. Для его выполнения вам понадобится учетная запись суперпользователя / sudo).

укажите свою рабочую среду php в eclipse под window -> preferences -> PHP -> PHP Executables в ваш созданный файл и перезапустите eclipse один раз с флагом -clean . pdt должен создавать временные «php.ini», содержащие всю необходимую информацию.

Команда Eclipse PDT решила ввести опцию -n для исправления ошибки # 324073 . Таким образом, загружен только php.ini из / tmp / zend_debug / …, и все дополнительные INI-файлы не были загружены.

Это было введено с PDT 2.2.0 M201010110334 (2010/10/11).

Для получения дополнительной информации см. Следующие ссылки:

Попробуйте вызвать функцию, описанную здесь: http://php.net/manual/en/function.php-ini-loaded-file.php и посмотреть, возвращает ли она точно тот же путь. На Ubuntu, а также на Debian конфигурация php разделяется между многими файлами. Посмотрите на / etc / php5 (или аналогичный путь).

В качестве последней меры я бы написал свою собственную конфигурацию и ссылался на нее в php-сценарии eclipse как на конфигурацию сценария, и убедитесь, что в конфиг включен и ссылки на расширение mysql.