class Produto
{
// ?int -> a ? siginifica que pode receber um inteiro ou um valor null
private ?int $id;
Ele deixa ser null, por conta do auto_incremet do banco ?
class Produto
{
// ?int -> a ? siginifica que pode receber um inteiro ou um valor null
private ?int $id;
Ele deixa ser null, por conta do auto_incremet do banco ?
Oii, Edvan.
Exatamente!
No seu caso, o atributo
private ?int $id;
significa que $id pode receber um número inteiro ou null
.
Isso é útil porque, quando você cria um novo produto para cadastrar, ele ainda não tem um ID, quem vai gerar esse valor é o banco de dados, graças ao AUTO_INCREMENT
da coluna id
.
Ou seja:
$id
é null
id
Por isso a classe precisa permitir null
nesse atributo, senão o PHP reclamaria quando você criasse um Produto
sem passar um ID.