如果我使用 use 导入 class,我应该在 PHPDoc 中使用 FQN 吗?
Should I use the FQN in PHPDoc if I'm importing the class with use?
假设我有一个 UserController
class 并且我正在导入 App\User
class 和 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...
}
}
是否建议在 PHPDoc 中添加 User
的完全限定名称,即使我使用 use
导入 class?
如果没有 use
语句,则使用 FQN,因为它会被识别为不同的 class,在您的情况下为未导入的 \JsonResponse
。
至于User
class,使用简称。
用use
语句导入class更方便,在docblock中写简称
也可以使用class别名,例如:
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...
}
}
假设我有一个 UserController
class 并且我正在导入 App\User
class 和 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...
}
}
是否建议在 PHPDoc 中添加 User
的完全限定名称,即使我使用 use
导入 class?
如果没有 use
语句,则使用 FQN,因为它会被识别为不同的 class,在您的情况下为未导入的 \JsonResponse
。
至于User
class,使用简称。
用use
语句导入class更方便,在docblock中写简称
也可以使用class别名,例如:
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...
}
}