Avoir bit
champ de type signifie que vous devez utiliser des valeurs brutes comme solution de contournement chaque fois que vous insérez/mettez à jour ce champ.
C'est parce que PDO par défaut liera ces valeurs et elles seront traitées comme des chaînes, donc bit
donnera 1
:
DB::table('table')->insert(['bit_field' => 0]); // inserts 1
DB::table('table')->insert(['bit_field' => DB::raw(0)]); // inserts 0
Et je suggère de le changer en tinyint
si vous pouviez.