使用目的类名;在课堂上

时间:2018-02-17 05:27:14

标签: php laravel

我在laravel框架中看到过一些类使用了Classname;在像Auth类这样的类里面,所以我需要知道,使用Classname的目的是什么;在课堂内,它也可以在课堂外使用。

例如

//e.g of auth class
class AuthController extends Controller {
     use Authenticable;   //or some other class
}

我们不能像

一样使用它
use Authenticable;   //or some other class
class AuthController extends Controller {

}

上述两者有什么不同吗?

2 个答案:

答案 0 :(得分:3)

在课程标题中使用use语句时,doing class/namespace import

在课程中使用use语句时,using a trait

他们不可互换。您通常使用标题use从另一个PHP类导入类/命名空间,然后如果它是可以与您的类混合的特性,则执行内部use以使用该特征。

答案 1 :(得分:0)

Here use is using to include traits in our classes. Inside the classes, we can include multiple traits by comma separated. 

//e.g of auth class
    class AuthController extends Controller {
         use Authenticable;   //or some other class
    }

Here use is using to include namespaces in our files.

use Authenticable;   //or some other class
class AuthController extends Controller {

}

请浏览以下链接:

https://www.sitepoint.com/using-traits-in-php-5-4/

https://code.tutsplus.com/tutorials/namespacing-in-php--net-27203