如何在 Eclipse 中为 PHP 核心函数启用自动完成/语法高亮?
Posted
技术标签:
【中文标题】如何在 Eclipse 中为 PHP 核心函数启用自动完成/语法高亮?【英文标题】:How to enable autocomplete/syntax-highlight for PHP core functions in Eclipse? 【发布时间】:2010-11-20 14:16:34 【问题描述】:我搜索了很多,检查了很多次必要的步骤,但它仍然不起作用。
我的环境是:
最新的 eclipse for php 开发包
>项目是新建的,不能直接从SVN签出
.project 有一行
<nature>org.eclipse.php.core.PHPNature</nature>
.buildpath 有一行
<buildpathentry kind="con" path="org.eclipse.php.core.LANGUAGE"/>
.settings/org.eclipse.core.resources.prefs 有一条线
include_path=0;/projectname
文件确保在 PHP 编辑器中打开
有些效果:
-
鼠标悬停时显示 PHP 核心函数定义,Ctrl+Click 将打开其定义的文件,但输入 'arr' 没有任何反应,而预期的数组函数列表
自动完成功能适用于内部函数/变量,例如类成员
但对 PHP 核心函数不起作用,语法高亮也不行
【问题讨论】:
【参考方案1】:右键单击您的项目 -> 配置 -> 添加 PHP 支持...
在 Eclipse 3.5 / PDT 2.1 上为我工作
【讨论】:
曾经检查过这个选项,它是灰色的 哇,谢谢,这在 Galileo 上对我有用,如果没有核心功能的自动完成功能,工作会很痛苦 我在 Helios 中右键单击我的项目时没有看到“配置”选项 别忘了添加 标签! 安装 PHP 支持后,重新启动对我来说还不够 - 我必须关闭编辑器中所有已打开的文件,然后重新启动并重新打开它们才能使语法突出显示工作(Eclipse露娜)【参考方案2】:对我来说,没有任何效果,除了:
-
备份然后删除下面的.db文件:/.metadata/.plugins/org.eclipse.dltk.core.index.sql.h2/
重启 Eclipse。
我从 #4 中得到这个提示:http://www.nwiresoftware.com/blogs/nwire/2010/09/five-tips-speeding-eclipse-pdt-and-nwire
【讨论】:
效果很好,只需删除 .db 文件并重新启动即可。谢谢 在禁用添加 PHP 支持选项时适用于 Eclipse 4.3。 在 Eclipse 4.3.0 上运行良好。谢谢 很好的建议。有谁知道如何以及在哪里触发 Eclipse 中的 DLTK 重新索引? Eclipse Kepler 和 PDT 3.2.0 帮助了我很多!谢谢 谢谢!只有这在 PDT 3.2.0 中帮助了我 :))【参考方案3】:如前所述,列出了 php 核心的 'natures' 节点,但这在导入或签出项目时是最不充分的。
备份您的 .project 删除“自然”节点子节点 关闭/重新打开 Eclipse 右键项目->配置->添加PHP支持 加回其他“自然”子代问题是该项目不会进行必要的导入,因为它假定它已经拥有。
【讨论】:
Right-click project -> Configure -> Add PHP Support
对我来说总是灰显?【参考方案4】:
没有任何帮助,但是这个:
在 Eclipse 中:
转到窗口 -> 首选项 -> 常规 -> 编辑器 -> 文件关联
点击添加
输入 *.php
在 Associated Editors 下选择 PHP Editor 并点击右侧的 Default。
关闭并打开您的 php 文件。
【讨论】:
【参考方案5】:workspace/.metadata/.plugins/org.eclipse.dltk.core.index.sql.h2下有3个.dll文件:model.h2.db、model.lock.db和model.trace.db
删除这些文件并重新启动 Eclipse。
【讨论】:
【参考方案6】:似乎还有很多与PHP Development Tools Project (PDT) 的自动完成相关的错误(请参阅Open Bugs)。
两天前已输入:bug 286733“当使用子命名空间补全不起作用。”
但这并不是唯一的一个:
“命名空间自动完成失败”(bug 281766) "[
php 5.3]
代码辅助不提供方法完成" (bug 286068)
...
它们都与 PHP 代码的命名空间有关。你能检查一下你是否在全局命名空间中重现了错误吗?
【讨论】:
不是这个,在我的项目中(未指定命名空间),也尝试了一个干净的PHP项目,自动完成对类成员有效,只是在输入核心函数时不起作用。【参考方案7】:如果问题仍然存在,请按照以下步骤操作:
从 Eclipse 中删除项目。
转到您的项目文件夹并删除 .Settings 文件夹和 .project 文件。
再次导入不同名称的php项目。
这对我有用。
【讨论】:
【参考方案8】:右键单击您的项目 -> 配置 -> 转换为 PHP 项目...
在 Eclipse 4.6 / PDT 5.2 上为我工作
【讨论】:
以上是关于如何在 Eclipse 中为 PHP 核心函数启用自动完成/语法高亮?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 SQLite 中为 DELETE 启用 LIMIT?
无法在 asp.net 核心中为身份服务器 4 启用 CORS