Php 简明教程

PHP – The "use" Statement

PHP 中的“use”关键字被认为与多种用途相关联,例如别名引用、插入特性以及在闭包中继承变量。

Aliasing

别名引用是通过使用操作符完成的。它允许你用别名或其他名称引用一个外部全限定名称。

Example

请看以下示例:

use My\namespace\myclass as Another;
$obj = new Another;

你还可以按如下所示进行分组使用声明 -

use some\namespace\{ClassA, ClassB, ClassC as C};
use function some\namespace\{fn_a, fn_b, fn_c};
use const some\namespace\{ConstA, ConstB, ConstC};

Traits

借助“use”关键字,你可以向类中插入一个特性。特性类似于类,但只打算以细粒度和一致的方式对功能进行分组。不可能自己实例化特性。

Example

请看以下示例:

<?php
   trait mytrait {
      public function hello() {
         echo "Hello World from " . __TRAIT__ .;
      }
   }

   class myclass {
      use mytrait;
   }

   $obj = new myclass();
   $obj->hello();
?>

它将生成以下 output

Hello World from mytrait

Closures

闭包也是一个匿名函数,它可以在“use”关键字的帮助下访问其作用域之外的变量。

Example

请看以下示例:

<?php
   $maxmarks=300;
   $percent=function ($marks) use ($maxmarks) {
      return $marks*100/$maxmarks;
   };
   $m = 250;
   echo "marks=$m percentage=". $percent($m);
?>

它将生成以下 output

marks=250 percentage=83.333333333333