В PHP static и const - это две разные вещи.
const обозначает константу класса.Они отличаются от обычных переменных, так как перед ними нет символа «$», и перед ними не должно быть модификаторов видимости (public, protected, private).Их синтаксис:
class Test
{
const INT = "/^\d+$/";
}
Поскольку они постоянны, они неизменны.
Статические обозначают данные, которые совместно используются объектами одного класса.Эти данные могут быть изменены .Примером может служить класс, который отслеживает, сколько экземпляров находятся в игре одновременно:
class HowMany
{
private static $count = 0;
public function __construct()
{
self::$count++;
}
public function getCount()
{
return self::$count;
}
public function __destruct()
{
self::$count--;
}
}
$obj1 = new HowMany();
$obj2 = new HowMany();
echo $obj1->getCount();
unset($obj2);
echo $obj1->getCount();