自宅のパソコンで、
mysql_fetch_row( mysql_query(" select b'1' ") )[0]
文字列「1」を返します。
ただし、Web サーバーでホストされている場合は、ASCII 文字 1 の文字列を返します。
ドクは言う-
ビット値はバイナリ値として返されます。印刷可能な形式で表示するには、0 を追加するか、BIN() などの変換関数を使用します。
しかし、私のローカル マシンでは、変換を行わなくても「1」が返されます。
Web サーバーで同じ動作をさせるにはどうすればよいですか?
同じ動作が得られた場合、PHP コードを次のように変換する必要はありません。
$row = mysql_fetch_row( mysql_query(" select bit1_field from .. where .. ") );
if( $row[0] === '1' ) ...;
に
... select bit1_field+0 as bit1_field ...
はbit1_field
タイプbit(1)
です。