Ao contrário do JavaScript, o PHP não possui inerentemente variáveis de objeto puras. No entanto, verificar se uma propriedade existe dentro de um objeto ou classe é possível usando várias abordagens.
A função property_exists() permite verificações explícitas sobre a existência de propriedade. Sua sintaxe é:
if (property_exists($ob, 'a'))
onde $ob é a instância do objeto ou classe.
Alternativamente, isset() pode verificar se uma propriedade está definida dentro de um objeto. No entanto, é crucial observar que isset() retorna falso se o valor da propriedade for nulo.
if (isset($ob->a))
Aqui está um exemplo demonstrando as diferenças:
$ob->a = null;
var_dump(isset($ob->a)); // false
Mesmo que a propriedade exista, isset() retorna false devido ao valor nulo.
class Foo
{
public $bar = null;
}
$foo = new Foo();
var_dump(property_exists($foo, 'bar')); // true
var_dump(isset($foo->bar)); // false
Neste cenário, property_exists() retorna verdadeiro porque a propriedade está definida, enquanto isset() retorna falso porque o valor é nulo.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3