mySQL 查詢結果與 PHP 型別轉換

mySQL 的查詢結果都回傳字串,PHP 非 0 即為 true 的隱式轉換又非常的不好用,例如:

"0" // 字串 0 用在 if 會被判斷成 true

諸如字串  "0", "1",傳到前台會造成更大的麻煩,比較好的處理是在包成 JSON 送到前台前先用 PHP 做強制型別轉換

可以強制轉換成的型別有:
– (int) 整數
– (bool) 布林值
– (float) 浮點數
– (string) 字串
– (array) 陣列
– (object) 物件

但由於上面提到  "0" 會被轉成 true 的關係,我本身比較常用的只有 (int)

// 把包有數字的字串轉成 int
$number = '0';
$int_number = (int) $number;

接著用 JSON 丟到前台,JavaScript 就能很方便地用

1 => true
0 => false

來判斷真假了

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s