0

我在 NetBeans 的自动完成功能中遇到了一些问题。我将 NetBeans 用于 Symfony2 PHP 项目,而 phpDocumentor 主要用于自动完成功能(不用于生成文档)。

这些(或基本相同)之间的正确语法是什么?

完全限定的类名:

class MyClass
{

    /**
     * @param \MyCompany\MyBundle\Entity\User $user
     * @return string
     */
    public function myFunction(\MyCompany\MyBundle\Entity\User $user) { }

}

班级名称:

use \MyCompany\MyBundle\Entity\User;

class MyClass
{

    /**
     * @param User $user
     * @return string
     */
    public function myFunction(User $user) { }

}
4

1 回答 1

1

从技术上讲,它们都是正确的。

Zend Studio (Eclipse) 不会生成自动完成,除非目标类是当前项目的构建路径的一部分。也许 NetBeans 有类似的东西?

你到底有什么问题?

编辑

仅供参考,您确实需要使用 FQCN 作为返回值,即使正确的命名空间已经在使用中。例如,如果MyClass::myFunction()返回一个User,你会想要这样做

use \MyCompany\MyBundle\Entity\User;

class MyClass
{

    /**
     * @param User $user
     *
     * @return \MyCompany\MyBundle\Entity\User
     */
    public function myFunction(User $user) { }

}
于 2012-05-22T21:55:58.280 回答