Anda menggunakan bidang Bit(1) untuk mewakili nilai boolean (TRUE
/FALSE
).
Klien database memetakan bidang bit (yang bisa lebih besar dari satu bit) ke string di mana satu karakter mewakili Oktet.
Anda tidak hanya dapat menggunakan bidang Bit(1) sebagai string PHP melalui ord()
berfungsi karena memperlakukan string sebagai Oktet tunggal:
if (ord($Site_Approved)) {
...
}
Anda tidak dapat menggunakan $Site_Approved
secara langsung karena ini adalah string dan akan selalu dievaluasi menjadi TRUE
terlepas dari apakah bit pertama disetel atau tidak.
Atau, Anda dapat memasukkan nilai database dalam kueri SQL ke desimal yang mungkin Anda cari:
s.Site_Approved+0 AS Site_Approved
Nilai desimal dalam rentang 0 hingga 1 berperilaku sangat mirip dengan boolean PHP (mereka hanya tidak berbagi jenisnya, sisanya sama).