问题标签 [php-language-server]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
183 浏览

language-server-protocol - LSP:无法获取文档符号

我正在学习 LSP,现在正在尝试获取文档符号。我使用Felix Becker PHP 语言服务器。无论我尝试什么,我都无法取回符号。

我试图记录语言服务器接收到的内容,这里是(试图省略敏感数据):

这是来自服务器的记录响应

  1. 很多{"method":"window\/logMessage","params"....
  2. 很多{"method":"textDocument\/publishDiagnostics"...

最后我得到

我找不到服务器没有响应符号的原因。我尝试了同一作者的 VS 插件,它工作正常,这意味着我在某个地方搞砸了。但就是想不通!

任何帮助表示赞赏。

0 投票
0 回答
33 浏览

php - 从项目外部路由到内部路由时的问题自动转到 index.php

我有一个项目,我必须像这样共享它的外部路由.. 例如:https ://www.example.com/something

如果我前往根网站,它不会导致任何问题,如果我前往任何内部路线,则不会导致任何问题。当我在网站内获取给定路由站点的副本并将其粘贴到地址栏或共享指向任何资源的链接时,问题就开始了,当我输入网站自动重定向到https://www.example.com/index的路由时.php这会导致一些集成回调出现问题,因为它无效。

我认为这是 htaccess 的问题,但我无法确定问题所在,因为我缺乏 htaccess 规则以及如何使用服务器配置管理它的经验。

  1. 我试图更改 htaccess 中的重写规则,但没有成功
  2. 我试图在服务器内找到一个配置文件,它覆盖 none 以使其接受覆盖但也没有结果成功

这是我的 .htaccess:

0 投票
1 回答
54 浏览

php - 如何支持在 PHP 中返回 $this 的方法的 IDE 语言服务器类型提示

我想发布一个A可以在本地扩展的类(LocalA)。大多数方法都需要返回$this,以便可以链接调用。我正在寻找一种方法来对A(and LocalA) 中定义的方法的返回值进行类型提示,以表示“它返回与调用该方法的对象相同的类”。

这样 IDE 可以在调用后提供建议的方法。

:self是一种语言可能性,但它不会。这意味着在 中定义的方法之后A,IDE 会将结果视为 anA而不是 a LocalA

在➊ IDE 将列出可能的方法a()b(),但在➋ 它只会列出a()

:static会很好,但无效,在 PHP 中不受支持/实现。

下面的答案看起来很有希望,PHP 很乐意运行它:

...但令人讨厌的是,我的语言服务器(通过coc-phpls 进行 intellepense)没有意识到特征中的“自我”应该指代B并因此包含所有这两个特征。

我正在尝试构建一个接收数据的导入器类,做一些事情。我正在使用流畅的界面(很多return $this)。我希望其他第三方能够通过添加他们自己的方法来扩展它,但这整件事实际上是关于开发人员的体验,所以我希望 IDE 能够获取插件提供的方法。