sql >> Databasteknik >  >> RDS >> Mysql

Hur man hämtar data med nollor i vältalig

Det finns inget enkelt sätt att göra det som Eloquent skulle erbjuda så du måste lägga till lite logik själv.

Ett alternativ skulle vara att lagra student_no som en sträng i databasen, annars kommer nollor att gå förlorade när det hämtas som ett heltal i PHP, eftersom PHP inte bryr sig om din ZEROFILL och behandlar 0005 som 5 .

Ett annat alternativ är att lägga till nollor manuellt i PHP efter att ha hämtat data från databasen, t.ex. genom att lägga till en accessor i din modell:

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

På det här sättet, när du använder student_no attributet för din modell skulle den konverteras till nollfylld sträng automatiskt.



  1. Använd MySQL relationsdatabaser på Ubuntu 8.04 (Hardy)

  2. Hur trunkerar man en tabell med Doctrine?

  3. Orsakas av:org.postgresql.util.PSQLEUndantag:FATAL:återstående anslutningsplatser är reserverade för superanvändaranslutningar som inte är replikerande

  4. Rekursiv i cakephp3?