2011-04-25 94 views
5

我已經在Ubuntu 10.10上安裝了Eclipse和xDebug。
當我調試一些PHP文件作爲一個頁面,工作正常。
當我嘗試將它作爲腳本進行調試時,我給出了未加載mysql擴展的消息。
我設置PHP可執行以下選項:當我在Eclipse中調試PHP腳本時,它不會加載mysql擴展

  • 可執行文件路徑:在/ 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 /斌/ PHP test.php的
我給予50個加載的模塊包括MySQL和mysqli的。
當我在Eclipse中將它作爲頁面進行調試時,我給出了相同的模塊和xdebug。
當我在Eclipse中將它作爲頁面進行調試時,我給出了包含xdebug的45個模塊,但是mysql和mysqli未加載。

+0

我有同樣的問題與Ubuntu 10.4。 PHP 5.3.5和Eclipse 3.6.2。我發現了一個類似的問題,關於特定的Eclipse插件Makegood,但一般來說並不適用於Eclipse。調試和運行模式都有相同的問題 – 2011-06-03 13:53:27

回答

1

嘗試調用此處描述的函數:http://php.net/manual/en/function.php-ini-loaded-file.php並查看它是否返回完全相同的路徑。 在Ubuntu以及Debian上,php配置被分割成多個文件。看看/ etc/php5(或類似的路徑)。

作爲最後的手段,我會寫自己的配置並在eclipse php run中作爲腳本配置引用它,並確保配置包含並引用mysql擴展。

4

今天在爲這個問題苦苦掙扎幾個小時後,我決定手動將cat所有信息放在一個.ini文件中,然後用eclipse -clean開始eclipse。像下面的腳本應該做的伎倆:

#!/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運行時指向window -> preferences -> PHP -> PHP Executables,並將其指向您創建的文件並使用-clean標誌重新啓動一次eclipse。 pdt應創建包含所有必要信息的臨時「php.ini」。

+0

您可以在「已安裝的PHP」的「PHP可執行文件」選項卡中將這樣的/etc/php5/cli_eclipse/php.ini定義爲「PHP ini文件(可選)」。至少在Eclipse的Oxygen版本中 – zeleniy 2018-02-20 09:51:14