1

在我的 PHP 项目中,我有两个不同的模型,它们具有相同的功能。

class Foo
{
    function xyz()
    {
        return "foo";
    }
}

class Bar
{
    function xyz()
    {
        return "bar";
    }
}

Geany 的问题是当我尝试转到函数定义时。考虑以下:

$bla = new Foo();
echo $bla->xyz();

通常,如果我 CTRL+单击xyzI 除了它去function xyz()in class Foo,但 Geany 会完全混淆并转到Bar.

有没有办法让 Geany 进入实际定义,而不是它找到的第一个?

4

1 回答 1

1

听起来,这个编辑器有一个简单的 lexer/parser-implementation for PHP with weak class/method/function-indexing。您可以做两件事来改善这种情况:

  1. 使用另一个 IDE。Eclipse(PDT 或 ZendStudio)是一种常见的选择。许多人还使用 phpStorm 或 NetBeans。还有其他要提到的,但我认为,这些都是大玩家。
  2. 为 Geany 写一个更好的插件。如果 Geany 是您选择的编辑器,但它具有其他合法使用的优势,那么它是唯一的出路。也许,已经有更好的 PHP 插件了。

另一件要提的事情:由于 PHP 在类型提示方面的不足,有一些方法可以扩展某些 IDE 的能力。以下是一些示例:http ://code.neox.net/2009/03/10/eclipse-pdt-code-completion-and-zend-framework/

于 2012-07-06T07:50:19.590 回答