开发者

While I am debugging PHP Script in Eclipse, it doesn't load mysql extension

I have installed Eclipse and xDebug on Ubuntu 10.10.

When I debug some php file as a page, that works fine.

When I try to debug it as a script, I give the message that mysql extension is not loaded.

I set the following options for PHP executable:

  • Executable path: /usr/bin/php
  • PHP ini file: /etc/php5/apache2/php.ini
  • SAPI type: CLI
  • PHP debugger: XDebug

I wrote the following script:

test.php

<?php

开发者_高级运维 $ext = get_loaded_extensions();

print_r($ext);

?>

When I put in command line /usr/bin/php test.php

I give 50 loaded modules include mysql and mysqli.

When I debug it as a page in Eclipse I give the same modules and xdebug.

When I debug it as a page in Eclipse I give 45 modules include xdebug, but mysql and mysqli are not loaded.


after struggling with this issue for several hours today, I decided to manually cat all informations inside one single .ini file, and started eclipse with eclipse -clean. something like the following script should do the trick:

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

(you could obviously check if the dir is already existing etc. but this script is here for illustrative purposes only. you'll need to use a superuser account/sudo to execute this).

point your php runtime in eclipse under window -> preferences -> PHP -> PHP Executables to your created file and restart eclipse once with the -clean flag. pdt should create temporary "php.ini"s containing all necessary information.


The Eclipse PDT team decided to introduce the -n option to fix the Bug #324073. So only php.ini from /tmp/zend_debug/... has been loaded, and all additional INI files have not been loaded.

This has been introduced since PDT 2.2.0 M201010110334 (2010/10/11).

For more information, see the following links:

  • http://redmine.piece-framework.com/issues/242
  • https://bugs.eclipse.org/bugs/show_bug.cgi?id=339547
  • https://bugs.eclipse.org/bugs/show_bug.cgi?id=347618


Try invoke the function described here: http://php.net/manual/en/function.php-ini-loaded-file.php and see if it returns exactly the same path. On Ubuntu as well as on Debian the php configuration is split among many files. Look at the /etc/php5 (or similar path).

As last resort I would write my own config and reference it in the eclipse php run as script configuration and make sure the config includes and references the mysql extension.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜