¿Qué hace la palabra clave PHP ‘var’?

Esta es probablemente una pregunta muy trivial, pero no he podido encontrar la respuesta ni a través de los motores de búsqueda web, ni en php.net. Dirígeme a donde pueda leer sobre esto, si no tiene tiempo para explicarme.

  1. ¿Qué significa la palabra clave ‘var’ en PHP?
  2. ¿Hay alguna diferencia entre PHP4 y PHP5?

Es para declarar variables de miembro de clase en PHP4, y ya no es necesario. Funcionará en PHP5, pero generará una advertencia de E_STRICT en PHP desde la versión 5.0.0 hasta la versión 5.1.2, desde el momento en que fue desaprobada. Desde PHP 5.3, var ha sido desaprobado y es un sinónimo de ‘public’.

Ejemplo de uso:

 class foo { var $x = 'y'; // or you can use public like... public $x = 'y'; //this is also a class member variables. function bar() { } } 

La palabra clave var se usa para declarar variables en una clase en PHP 4 :

 class Foo { var $bar; } 

Con PHP 5, se introdujo la visibilidad de propiedades y métodos ( public , protected y private ) y, por lo tanto, var está en desuso.

Cito de http://www.php.net/manual/en/language.oop5.visibility.php

Nota: El método de PHP 4 de declarar una variable con la palabra clave var todavía es compatible por razones de compatibilidad (como sinónimo de la palabra clave pública). En PHP 5 antes de 5.1.3, su uso generaría una advertencia E_STRICT.

Respuesta: A partir de php 5.3 y > , la palabra clave var es equivalente a public al declarar variables dentro de una clase.

 class myClass { var $x; } 

es lo mismo que (para php 5.3 y > ):

 class myClass { public $x; } 

Historial: Anteriormente era la norma para declarar variables en clases, aunque luego se depreció, pero más tarde (PHP 5.3) se convirtió en no depreciado.

var se usa como public .if a variable se declara así en una clase var $ a; si significa que su scope es público para la clase. en palabras simples var ~ public

 var $a; public 

Así que, básicamente, es un estilo antiguo y no lo utilices para una versión más nueva de PHP. Es mejor utilizar la palabra clave pública en su lugar, si no está enamorado de la palabra clave var. Entonces, en lugar de usar

 class Test { var $name; } 

Utilizar

 class Test { public $name; } 

aquí y ahora en 2018 usando var para la statement de variables es sinónimo de public como en

 class Sample{ var $usingVar; public $usingPublic; function ..... }