sql >> Base de Datos >  >> RDS >> Mysql

Cómo recuperar datos con ceros en elocuente

No existe una forma sencilla de hacer eso que Eloquent ofrecería, por lo que deberá agregar algo de lógica usted mismo.

Una opción sería almacenar student_no como una cadena en la base de datos, de lo contrario, los ceros se perderán cuando se obtenga como un número entero en PHP, ya que PHP no se preocupa por su ZEROFILL y trata 0005 como 5 .

Otra opción es agregar ceros manualmente en PHP después de obtener datos de la base de datos, p. agregando un accesor en su modelo:

public function getStudentNoAttribute() {
  return sprintf("%05d", $this->attributes['student_no']);
}

De esta forma, siempre que acceda a student_no atributo de su modelo, se convertiría automáticamente en una cadena llena de ceros.