Eclipse PDT +代码完成根本不起作用

4 php zend-framework eclipse-pdt

我想开始一个新的Zend项目,目前我正面临一些关于Eclipse PDT的问题......我的问题是,Eclipse for PHP中的代码完成根本不起作用.

我尝试了很多不同的教程等,例如制作一个新项目并导入文件; 制作新工作区并在那里导入项目; 几乎所有可能的构建路径设置和库导入组合; 删除.metadata中的几个文件(如果你谷歌的话,你会发现很多像这样的教程),但没有任何效果.

[编辑]还设置了PHPNature(感谢tranisstor):

<natures>
    <nature>org.eclipse.php.core.PHPNature</nature>
    <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
</natures>
Run Code Online (Sandbox Code Playgroud)

(如果只有PHPNature集,它也不起作用,另外没有其他)

[/编辑]

详细问题:我创建了一个新的Zend项目,并尝试在IndexController.indexAction()中开始编码.我做的第一件事:我输入$this->,但没有代码完成......我想也许我需要添加Zend库,我做了.当我点击进入Zend_Controller_Actionclass IndexController extends Zend_Controller_Action我可以看到文档时Zend_Controller_Action,我也可以按下F3并出现相应的文件...这意味着,Zend成功添加为库.我也试过Ctrl+ Space,但没有任何反应.顺便说一句,标准的PHP函数isset()也不会出现在代码完成中

有人知道如何解决这个问题吗?我正在使用Eclipse Juno,Eclipse PDT 3和Zend Framework 1.x(不完全确切,但它不是ZF2,如果我打开它会很好用http://localhost.

我很感激任何帮助

小智 30

将eclipse升级到Kepler时我遇到了同样的问题.以下对我有用:

删除workspace/.metadata/.plugins/org.eclipse.dltk.core.index.sql.h2下的文件

原因是工作区旧DLTK索引不符合新版本,需要重建.启动eclipse并重新生成DLTK索引.

在此之后,代码完成再次为我工作.