self()是用在类中了这个new self()用法小编第一次听说过了,不过看了一些相关文章 self()与this有那么一像但又不全像,下面我们来看看php中new self()关键字的用法.
php new self()一般在类内部使用,作用是对自身类实例化,下面给个实例讲解如何使用:
<?php
class phpernote{
public function __construct(){
echo '武林网!';
}
public static function getInstance(){
new self();
}
}
phpernote::getInstance();
返回结果:武林网!
例子:
//self是指向类的本身,只跟类有关,跟任何对象实例无关
class test_self{
private static $first_count; //定义静态变量
private $last_count;
function __construct(){
$this->last_count=++self::$first_count;//直接用self调用变量的值赋值给另一个变量
}
function __destruct(){}
function print_self(){
print($this->last_count);
}
}
$abc=new test_self();//实例化对象
$abc->print_self();//1
echo '<br />';
总结:self是指向当前类的指针意思就是指类的本身了,所以我们如果要调用自己的话就可以这new self来创建了.