php中use的用法-php教程

资源魔 45 0

  正在PHP中,假如定名空间字符串太长时,咱们就应用use来相应的缩长寿名空间。这也是use正在PHP中的作用。上面咱们就为各人引见一下PHP中use的用法。

保举教程:PHP视频教程

一、new类时,最后面无需用反斜杠。别的,use后不as时,缩短的定名空间默许为最初一个反斜杠后的内容。

namespace animal\dog;
class Life{
 function __construct(){
  echo 'dog life!';
 }
}
namespace animal\cat;
class Life{
 function __construct(){
  echo 'cat life!';
 }
}
new Life(); //依照代码执行程序,这里默许animal\cat这个定名空间
new \animal\dog\Life(); //A
use animal\dog; //a
new dog\Life(); //B
use animal\dog as d; //b
new d\Life();

  经过A、B行代码比拟,需求留意:

  应用use后,new类时,最后面不反斜杠。

  没应用use时,定名空间最后面有反斜杠

  经过a、b行代码比拟,能够了解:

  use后不as时,缩短的定名空间默许为最初一个反斜杠后的内容。如上的:

use animal\dog;

相称于

use animal\dog as dog;

2.namespace前面没有倡议加类名,但use后能够。

//name.php
namespace animal\dog;
class Life{
 function __construct(){
  echo 'dog life!';
 }
}
namespace animal\cat;
class Life{
 function __construct(){
  echo 'cat life!';
 }
}
use animal\dog\Life as dog; 
new dog();

  如上所示,use后加之类名后,就相称于把类改了个称号:由Life改成dog了。

  下面不必as dog就会报错:

 Fatal error:  Cannot use animal\dog\Life as Life because the name is already in use

  由于cat下也有个同样称号的Life类。

  能够了解为,应用use后,这个昵称对应的类只能归以后定名空间据有,其它定名空间下没有容许存正在该类。

//name.php
namespace animal\dog;
class Life{
 function __construct(){
  echo 'dog life!';
 }
}
class Dog{
 function __construct(){
  echo 'dog in dog!';
 }
}
namespace animal\cat;
// class Dog{
// function __construct(){
//  echo 'dog in cat!';
//  }
// }
class Life{
 function __construct(){
  echo 'cat life!';
 }
}
use animal\dog; 
new dog\Dog();

如上,应用了

 use animal\dog;
  cat

  经过下面代码,我想应用use的目的成果(缩长寿名空间称号)就很显著了。

简略总结一下:

  use就是起大名的作用,不管写起来仍是提及来均可以省很多事儿。

以上就是php中use的用法的具体内容,更多请存眷资源魔其它相干文章!

标签: php php开发教程 php开发资料 php开发自学 use

抱歉,评论功能暂时关闭!