In PHP5, what is the difference between using self and $this? When is each appropriate?
January 18, 2011 Leave a Comment
Use $this to refer to the current object.
Use self to refer to the current class.
In other words,
use $this->member for non-static members,
use self::$member for static members.
Use self to reference static class properties
<?php
class visitors
{
private static $visitors = 0;
function __construct()
{
self::$visitors++;
}
static function getVisitors()
{
return self::$visitors;
}
}
$visits = new visitors();
echo visitors::getVisitors()."
“;
$visits2 = new visitors();
echo visitors::getVisitors().”
“;
?>