如果使用use导入类,是否应该在PHPDoc中使用FQN?

Cam*_*ilo 4 php phpdoc

假设我有一个UserController课程,并且正在使用导入该App\User课程use。在内部,有一种show()方法可以接收的实例User

namespace App\Http\Controllers;

use App\User;

class UserController extends Controller
{
    /**
     * Show user info
     * 
     * @param  User $user
     * @return Illuminate\Http\JsonResponse
     */
    public function show(User $user)
    {
        // Do something...
    }
}
Run Code Online (Sandbox Code Playgroud)

User即使我使用导入类,还是建议在PHPDoc中添加的完全限定名称use吗?

Pet*_*erM 5

如果没有use语句,请使用FQN ,因为在您的情况下,\JsonResponse该语句将被识别为其他类,因为它不会被导入。

至于User班级,请使用简称。

使用use语句导入类并在docblock中写短名称更加方便。

也可以使用类别名,例如:

namespace App\Http\Controllers;

use App\User;
use Illuminate\Http\JsonResponse as Response;

class UserController extends Controller
{
    /**
     * Show user info
     * 
     * @param  User $user
     * @return Response
     */
    public function show(User $user)
    {
        // Do something...
    }

}
Run Code Online (Sandbox Code Playgroud)