如何在 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 -&gt; Configure -&gt; 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?

在 macOS Sierra 中为崩溃的进程启用核心转储

在 wamp 中为 php 启用 opcache

无法在 asp.net 核心中为身份服务器 4 启用 CORS

在 NET 5 asp.net 核心 Web 应用程序中为 Kestrel 启用 Windows 身份验证

在 XAMPP 中为 CURL 启用 SSL 支持