Что делает PHP ключевое слово var?
Вероятно, это очень тривиальный вопрос, но я не смог найти ответ ни с помощью поисковых систем, ни на php.net. Пожалуйста, просто направьте меня туда, где я могу прочитать об этом, если у вас нет времени, чтобы объяснить.
- Что означает ключевое слово var в PHP?
- Есть ли различия между PHP4 и PHP5?
7 ответов
Он предназначен для объявления переменных класса в PHP4 и больше не нужен. Это будет работать в PHP5, но поднимет E_STRICT
предупреждение в PHP от версии 5.0.0 до версии 5.1.2 с момента его устаревания. Начиная с PHP 5.3, var не устарел и является синонимом 'public'.
Пример использования:
class foo {
var $x = 'y'; // or you can use public like...
public $x = 'y'; //this is also a class member variables.
function bar() {
}
}
var
Ключевое слово используется для объявления переменных в классе в PHP 4:
class Foo {
var $bar;
}
С PHP 5 свойство и видимость метода (public
, protected
а также private
) был введен и, таким образом, var
устарела.
Я цитирую http://www.php.net/manual/en/language.oop5.visibility.php
Примечание. Метод объявления переменной PHP 4 с ключевым словом var по-прежнему поддерживается в целях совместимости (как синоним открытого ключевого слова). В PHP 5 до 5.1.3 его использование генерировало бы предупреждение E_STRICT.
Ответ: с php 5.3 и >
, var
Ключевое слово эквивалентно public
при объявлении переменных внутри класса.
class myClass {
var $x;
}
такой же как (для php 5.3 и >
):
class myClass {
public $x;
}
История: Раньше это было нормой для объявления переменных в классах, хотя позже это стало устаревшим, но позже (PHP 5.3) оно стало устаревшим.
Так что в основном это старый стиль и не используйте его для более новой версии PHP. Вместо этого лучше использовать ключевое слово Public, если вы не влюблены в ключевое слово var. Так что вместо использования
class Test {
var $name;
}
использование
class Test {
public $name;
}
В PHP7.3 все еще работает...
https://www.php.net/manual/en/language.oop5.visibility.php
Если объявлено с использованием var, свойство будет определено как общедоступное.
var используется как public . Если varable объявлен так в классе var $a; if означает, что его область является общедоступной для класса. в простых словах var ~public
var $a;
public
Здесь и сейчас в 2018
с помощью var
для объявления переменной является синонимом public
как в
class Sample{
var $usingVar;
public $usingPublic;
function .....
}