0

Symfony では、クラス名リゾルバーを使用する習慣を取っています::class(php5.5 以降):

use AppBundle\Entity\Product;

// ...

$resolver->setDefaults(array(
    'data_class' => Product::class
));

FQN 文字列の代わりに:

$resolver->setDefaults(array(
    'data_class' => 'AppBundle\Entity\Product'
));

私がこれを行っているのは、読みやすくするためであり、一部のスマート IDE で内観するのに便利だからです。

ただし、公式ドキュメントでこの慣行の例はあまり見られません。したがって、これは互換性の問題 (< php5.5) によるものなのか、参照する必要があるすべてのクラスを体系的にインポートするのが良くないためなのか疑問に思っています。

::class私の質問は次のとおりです: FQN を参照する必要があるすべての場所で使用することは良い習慣ですか?

4

1 に答える 1

1

答えは次のようです。

php<5.5 との互換性の問題を除けば、::class必要な場所で名前リゾルバーを使用することを妨げるものは何もありません。

于 2016-06-08T06:58:27.043 に答える