タグ

ブックマーク / mio-koduki.blogspot.com (1)

  • [PHP][PDO][SQL] IN句のbindを簡単に作成する。

    PHPからPDOでIN句を含むSQLを発行するとき IN(?,?,?,?)やIN(:in_1,:in_2,:in_3) と検索する個数分「?」なり「:in_1」なりを書かないといけない。 個数が固定であれば直書きでもいいが、checkboxから飛んできたデータなど、 不定であることが多い。 もちろんforやforeachなどループで回せば書くことはできるが少々面倒臭い。 そういう時は //idに対してこういうデータで検索条件の値が飛んでくるとする $data=array(2,7,14,23); $sql=''; $where=array(); $sql.="SELECT * FROM table WHERE flag=?"; $where[]=$flag; $sql.=" AND id IN(".substr(str_repeat(',?',count($data)),1).")"; $w

    iww
    iww 2014/11/05
    ? を動的に増やす
  • 1