haiju's 開発メモ

開発に必要な情報を自分用にメモ

CodeIgniter

CodeIgniter3.xで複数のデータベースオブジェクトに接続するには?(同じスキーマ内では作れないのが仕様)

似たようなことをCakePHP2.xでやった記憶はあるが、文化が 違うかもしれないし既に覚えていないので、CodeIgniter3.xで やる方法についてメモしておく。 なお、ドキュメントを読みながら試しているが定義内容は 分かったけど、それは一体どこのファイルに定…

PostgreSQL 10.10で日本語データ以外を修正するとupdateクエリーを実行した先で更新データがずれる問題がある【調査中】

ローカルの開発環境にインストールしたPostgreSQLのロケール を「C」(ロケール未設定/default)にしてインストールした後に、 lc_collateとlc_ctypeをWindows ShiftJIS(Japanese_Japan.932) に上書きして、日本語以外のデータのカラムに対してupdate クエリー…

CodeIgniter3.xでパスワードをハッシュ化するのに、EncryptionクラスとSecurity helperで見解が違ってた

結論として、password_hash()を使うべきと主張している、Encryption クラスの注意書きの方が正しい気がする。 version 4ではSecurity helperのdo_hash()メソッドは廃止されているが、 version 3にはあって、パスワードをSHA1(default)やMD5等、PHPの hash_al…

CodeIgniter3.xのパス関連の定数について

何となくでしか見てなかったけど、APPPATHとかBASEPATH って何だったっけ?と思ったので調べてみた(Φω| 参考にしたサイトにそのまま書いてあるのを見て、そのまま 何も考えずにコピペも何だかなと思うし、単純にフレーム ワークを学習用途で触るだけだと考…

CodeIgniter 3.xでREST API【あとで詳しく】

REST APIのテンプレート実装のため、CodeIgniter界隈で共通 して使われてる?クラスやライブラリなどについて調査中の ものについてまとめる。 REST APIに対応するには、CIControllerじゃなくてREST_Controller とかいうのを継承する必要があるらしい... ほ…

Codeigniter3.xでユーザー独自クラスを作成して利用するには?

サンプル用コントローラーの中で、private functionで定義 した各種ユーザー専用チェック関数をライブラリとして 外出しするにはどうするか調べてみた。 結論として独自クラスを、application/librariesの下に配置 して、呼びたいコントローラーのコンストラ…

CodeIgniter3.xでのPHPコーディング規約について

ファイル名はconfig以下のファイルがそうなっていたので、 snakeケース想定でメソッドやファイルを実装していたw(Φω| その辺のチェックなしでマズいと思ったので、改めて調べた ところ、snakeケースで問題なかったみたいだwww 日本語の情報にたどり着けな…

CodeIgniter3.xのユーザー設定ファイルで1つのキーに対して複数の値を持つには?について、考えた

そもそもPHPの連想配列では、JavaScriptのように1つのkeyに対して 複数のvalueを定義することはできかったような気がする(連想配列の入れ子は 持てるけど)し、CodeIgniter3.xのユーザーカスタムの設定ファイルで想定 されている定義方法は $config['SOME'] =…

CodeIgniter 3.xで外部設定ファイルを読み込むには?

設定ファイルを外部から読むにはどうするか調べて試して みたので、備忘録としてまとめる(Φω| [手順] 1. application/config以下に拡張子が「.php」の設定ファイルを配置。 2. 自動読み込みでautoloadを設定。 3. apacheが起動していたら再起動。 4. Contro…

CodeIgniter3.xでページ間でセッションを利用するには?

CodeIgniter3.xと大雑把に書いてたけど、3系でもバージョンによって 利用できるPHP7のバージョンが違ったり、7自体をサポートしてなかっ たりするらしい。 ちなみにXAMPP portable最新のPHPは7.3.9で7.3がサポートされている のは最新の3.1.11のみという情報…

CodeIgniter3.xでCSRFプロテクション機能を使う

CodeIgniter 4.xも出たけど、とりあえず3.xでCSRFプロテクション 機能を使う場合について調べたのでメモしておく(Φω| [手順] 1. codeigniter/application/config/config.phpを開き、下記赤枠の項目をTRUEに変更。 下記変更でプログラム全体に有効になり、画…

CodeIgniter 3.xのバリデーションメッセージを日本語化するには?

CodeIgniter 4.xのrc2が出たけど、とりあえず3.1.xの最新で バリデーション含むフォーム作成をユーザーガイドを見ながら やっている。 で、バリデーションエラー時のメッセージを日本語化する 方法についてメモしておく(Φω| いまいち、プロトタイプの流れが…

CodeIgniter 3.xでBulmaを導入するには?

CodeIgniter3.xでBootstrapまでデカくなくていいけど 手書きじゃなくて簡易なCSSフレームワークを使いたい 場合の導入方法について調べたのでメモしておく(Φω| 調べただけで動かしてないけど基本的にそれでイケるはず. [手順] 1. applicationフォルダと同じ…

CodeIgniter 3.xでFormで作成した画面遷移のURLに付加される「index.php」を取り除くには?

この記事を読んだ時に、application/config/routes.phpを適切に修正 すればいいだけでは?と思ったが、Formヘルパーを利用して画面を 実装した場合に、「index.php」がcodeIgniter3.xを設置したURLの「/」 の後ろに表示されるという仕様になっているというの…

CodeIgniter 3.xの使い方を公式ドキュメントのチュートリアルで試す

詳細については帰宅してから、いじる予定(Φω| なぜなら、この資料を見ながら調べている環境にはメモリが Win10 Proに8GBしか詰まれてないので並列作業で捗らない から (タブブラウザ2種類で複数タブを開きながらVSCodeで コードを書いてXAMPPを動かしてたら…

PHPのWebフレームワークとかCSSフレームワークとか調査するための環境をXAMPP portableで構築 (1)

今どきのWeb開発で使えるフレームワークを調査するために、ただテキスト 情報だけを読んで選定するのどうなん?と思ったので、DockerやVMを立てる のすら面倒くさかったので、XAMPP portableを使ってみたので忘れないうち に環境構築についてメモしておく。…