範囲呼び出しの話
SQliteには BETWEEN というそのままな呼び出しコマンドがあった
select * from bbs where id BETWEEN 1 and 20
別にwhereで囲んでも結果は同じなんだけど、どっちが早いんだろ?
select * from bbs where id > 1 and id < 20
親記事の数を数える話
もとはtree.logの行数をcount()してたけど
sqlの場合、count(*)を使う
select count(*) from bbs where parent > 0
値の取得はforeachじゃなくて、1行取得のfetchを使うらしい
$query->fetchColumn();
レスコメント表示の話
DSP_RESで一覧画面のレス表示件数、DSP_RESIMGでレス内の画像表示件数が指示されてるので
レス取得のクエリに limitをつける
select * from bbs where tree == $res limit DSP_RES
ただ、クエリ内で定数が使えなかったので変数に格納して呼び出す
画像表示件数は画像をカウントして指定数になるとbreakする
$c_img = (DSP_RES)? 0:null; if($filename) $c_img ++ if($c_img >= DSP_RES)break;
という訳で三項演算子
ifより少しばかり遅いけど記載が短くなるから好き
って三項演算子の速度比較みてたら
三項演算子よりも暗黙の型変換のほうが、速度低下が大きい
なんですとー!!
$a = '0'; $a ++
こういう記載よくやるけど駄目なんか