Cita:
Iniciado por masterojitos te deberia devolver true puesto que la funcion es publica.... si deseas que retorne false.... al atributo $foo tendrias que asignarle static no private.
No habla de ninguna función, es una propiedad del objeto, y debería comportarse igual tanto static como private. ¿Por qué dices eso?
Aparentemente sí es un bug ...
Código PHP:
Ver original<?php
class ExampleSuperClass
{
private $foo;
static protected $bar;
private function foo()
{
}
public function propertyFooExists()
{
return property_exists($this, 'foo');
}
}
class ExampleSubClass extends ExampleSuperClass
{
public function methodExists()
{
}
public function propertyBarExists()
{
return property_exists($this, 'bar');
}
}
$example = new ExampleSubClass();
var_dump($example->propertyFooExists()); var_dump($example->propertyBarExists());
Con PHP 5.2.10:
Código:
bool(true)
bool(true)
bool(false)
Con PHP 5.3.0:
Código:
bool(true)
bool(false)
bool(true)
Salida esperada ¿?
Código:
bool(true)
bool(true)
bool(true)
...