Skip to main content

CodeIgniter 3 Query Builder

公式のマニュアルはここです。

つぎは誰もが必ず使うであろうDB関連の説明。
DBの中でもQuery Builderの新機能を書いていこうと思います。

CI2ではActive Recordってなってたと思うのですがCI3からQuery Builderに名前が変わりました。
基本的にはコードは変わってはいないのですが、新機能で以前はできなかったより複雑なSQLを発行できるようになっています。

続きを読む

CodeIgniter 3 Session Library

公式のマニュアルはここです。

おそらく一番変わったのではないかと思うセッションライブラリの変更点です。
基本的には下位互換があるので2系から3系にアップグレードしてもほぼそのまま動くと思います。

ストレージドライバ

  • files (default; file-system based)
  • database
  • redis
  • memcached

新たにredisとmemcachedが追加されてます。
自分はDBで事足りてますが、環境によってはとても嬉しい追加ではないでしょうか。

続きを読む

Come Back to CodeIgniter

EllisLabがCodeIgniterの新しいオーナーを探しているってあたりからしばらく情報見ていなかったのですが
いつの間にか新しいオーナーからライセンスまで変わっていてちょっとびっくりです。

日本ユーザー会もライセンス論争から長い間更新されていませんでしたが、いつの間にか更新されていました。

CodeIgniterの新しいオーナーが、 EllisLab からBritish Columbia Institute of Technology(ブリティッシュ・コロンビア工科大学)に変わりました。
これに伴い、CodeIgniterのライセンスがEllisLabの独自ライセンスからMITライセンスに変更されました。MITライセンスが適用されるのは3.0-dev以降です。
Source: 日本CodeIgniterユーザ会

ライセンスもMITに変わって長い間続いていたライセンス論争もこれで終わりですね。

公式サイトに行くとCodeIgniter3RC3が出ていて、リリース記事によると大きな変更がない限り次のリリースが正式なリリースになるようです。

次の記事で目についた変更点などをピックアップしていきたいと思います。

CodeIgniter v2.1.3 バグ

コーティング中にはまってしまったのでメモ。

$this->db->from("hogehoge");
$this->db->set('hoge', "hoge");
$this->db->insert();

このコードでDBのPrefixを使うとSQL Queryのテーブル名が
「”$Prefix$Prefix hogehoge」となぜかPrefixが2回ついてしまいます。

$this->db->set('hoge', "hoge");
$this->db->insert("hogehoge");

対策方法はfromを使わずにダイレクトにテーブル名を指定してあげると問題ないようです。

メソッドやクラス用のメモ

自分用のφ(`д´)メモメモ…

それぞれ反対の意味を持つ語の表

Add / Remove

Insert / Delete

Get / Set

Start / Stop

Begin / End

Send / Receive

First / Last

Get / Release

Put / Get

Up / Down

Show / Hide

Source / Target

Open / Close

Source / Destination

Increment / Decrement

Lock / Unlock

Old / New

Next / Previous

よく忘れるのでメモ。

ちなみに英語化するときに有名な話で

日本人がよく使う「regist」って言葉があります。

仕事でもチラホラ見かけたりしたんですが

この単語、日本人が作り出した誤った単語です。

あまつさえ「registed」とかワケわからん言葉とか。

単語としては「register」が正解。

アレかな。FFの魔法とか上記の名前だし

registerだと動詞の派生系っぽいし・・・

まぁ、言葉を見るたびに英語辞書の重要さが感じられます。

Source:Dzz/D’s Note – [対義語]プログラムのメソッドの命名

これは非常に助かる。

たまに忘れて、調べたりするのでφ(`д´)メモメモ…