Thinkphp3.2自動的に転送小文字のデータベースフィールド、フィールドケースオートチェンジャー

最も簡単な方法は、設定ファイルに追加することです

' DB_PARAMS ' => [\ PDO :: ATTR_CASE => PDO :: CASE_NATURAL \]、

このプロジェクトは、いくつかの直接の行にされている場合でも、これは他の人が書き込ん影響を与える可能性があり

それから私は、動的にDB_PARAMSに内部のコントローラでこの設定を変更したいのですが、後から見つかりません。

あるので、基本クラスのデータベース操作、単一の実施形態のモデル。新しいオブジェクトを再わけではありません。

最後に、私は再宣言する機能には彼が再新モデルを可能にすることである方法を考えました

関数 DB($表 = '' ){ 
  $ CONFIG = [ 'DB_TYPE' => C( 'DB_TYPE')、 'DB_USER' => C( 'DB_USER')、 'db_pwd' => C( 'DB_PWD')、 'DB_HOST' => C( 'DB_HOST')、 'DB_PORT' => C( 'DB_PORT')、 'DB_NAME' => C( 'DB_NAME')、 'db_params' => [ \ PDO :: ATTR_CASE => PDO :: CASE_NATURAL \、 ] ]; 戻る(M $の設定、 ''、$表を }

この試験では、とき、MのようなDBに

あなたが他のパラメータを変更したい場合は、参照がparseConfig機能は、設定パラメータが存在する、請求項ThinkPHP \ライブラリ\ \ Db.class.php、おそらく約56行を考えて作ることができます

同社のプロジェクトなので、各インスタンス化モデルは、(「tableNameの」、null)のMであるので、私はまた、除去された表の接頭辞を置きます。

 ヒント:家主は、テーブル内のフィールドが斜めに交差提案裁判に名前を付け、大文字と小文字+を含んで推奨されていません。

おすすめ

転載: www.cnblogs.com/wangzhaobo/p/11670720.html