This is probably a very trivial question, but I haven't been able to find the answer neither through web search engines, nor on php.net. Please just direct me to where I can read about this, if you haven't got time to explain.
The var
keyword is used to declare variables in a class in PHP 4:
class Foo {
var $bar;
}
With PHP 5 property and method visibility (public
, protected
and private
) was introduced and thus var
is deprecated.
here and now in 2018
using var
for variable declaration is synonymous with public
as in
class Sample{
var $usingVar;
public $usingPublic;
function .....
}
So basically it is an old style and do not use it for newer version of PHP. Better to use Public keyword instead;if you are not in love with var keyword. So instead of using
class Test {
var $name;
}
Use
class Test {
public $name;
}
Answer: From php 5.3 and >
, the var
keyword is equivalent to public
when declaring variables inside a class.
class myClass {
var $x;
}
is the same as (for php 5.3 and >
):
class myClass {
public $x;
}
History: It was previously the norm for declaring variables in classes, though later became depreciated, but later (PHP 5.3) it became un-depreciated.
In PHP7.3 still working...
https://www.php.net/manual/en/language.oop5.visibility.php
If declared using var, the property will be defined as public.
var is used like public .if a varable is declared like this in a class var $a; if means its scope is public for the class. in simplea words var ~public
var $a;
public
I quote from http://www.php.net/manual/en/language.oop5.visibility.php
Note: The PHP 4 method of declaring a variable with the var keyword is still supported for compatibility reasons (as a synonym for the public keyword). In PHP 5 before 5.1.3, its usage would generate an
E_STRICT
warning.
Source: Stackoverflow.com