Ground Sunlight

Windowsで作る - PHPプログラミングの開発環境

ユーザ用ツール

サイト用ツール


basic-library:idiorm:1.5

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
basic-library:idiorm:1.5 [2020/03/20 23:04]
y2sunlight
basic-library:idiorm:1.5 [2020/04/18 10:51] (現在)
y2sunlight [ORマッパー - Idiorm]
行 7: 行 7:
  
 関連記事 関連記事
-  * [[basic-library:project|プロジェクトの作成 - apricot]]+  * [[basic-library:project|プロジェクトの作成 - Apricot (α版)]]
   * [[basic-library:phpdotenv:4.1|環境変数 - phpdotenv]]   * [[basic-library:phpdotenv:4.1|環境変数 - phpdotenv]]
   * [[basic-library:monolog:2.0|ログ出力 - monolog]]   * [[basic-library:monolog:2.0|ログ出力 - monolog]]
   * ORマッパー - Idiorm   * ORマッパー - Idiorm
   * [[basic-library:bladeone:3.37|テンプレートエンジン - BladeOne]]   * [[basic-library:bladeone:3.37|テンプレートエンジン - BladeOne]]
-  * [[basic-library:fast-route:1.3|リクエストルーター - fast-route]] +  * [[basic-library:fast-route:1.3|リクエストルーター - FastRoute]] 
-  * [[basic-library:whoops:2.7|エラーハンドラー - whoops]]+  * [[basic-library:league-container:3.3|DIコンテナー League/Container]] 
 +  * [[basic-library:valitron:1.4|バリデーター - Valitron]] 
 +  * [[basic-library:whoops:2.7|エラーハンドラー - Whoops]]
   * [[basic-library:php-debugbar:1.16|デバッグ出力 - php-debugbar]]   * [[basic-library:php-debugbar:1.16|デバッグ出力 - php-debugbar]]
  
行 33: 行 35:
  
 作者によれば、Idiormはバージョン1.5.0の時点(2914-06-22)で機能面では完成し、その後はバグの修正による保守のみになるそうです。その意味でidiormは既に(良い意味で)枯れているORMと言えるでしょう。軽量なORMについては、今度も他の動向に注視する必要がありますが、現時点ではidiormをお薦めしたいと思います。 作者によれば、Idiormはバージョン1.5.0の時点(2914-06-22)で機能面では完成し、その後はバグの修正による保守のみになるそうです。その意味でidiormは既に(良い意味で)枯れているORMと言えるでしょう。軽量なORMについては、今度も他の動向に注視する必要がありますが、現時点ではidiormをお薦めしたいと思います。
- 
->Note: 
->Idiormは複合主キーには対応していません。従って、テーブルにはサロゲートキーが必要になります。サロゲートを好まない方は他のORMをお探しください。 
  
 \\ \\
行 64: 行 63:
 パッケージの取得が終わると ''composer.json'' の ''require'' に以下が追加されます。 パッケージの取得が終わると ''composer.json'' の ''require'' に以下が追加されます。
  
-<code json composer.json>+<code javascript composer.json>
 { {
     "require": {     "require": {
行 77: 行 76:
 ===== テストプログラム ===== ===== テストプログラム =====
  
-このテストプログラムは、最初に実行した時に、SQLiteのデータベースファイル(test\sample.sqlite)を作成し、次のSQL文を実行してテスト用のテーブルを自動的に作ります。+このテストプログラムは、最初に実行した時に、SQLiteのデータベースファイル(test\var\db\sample.sqlite)を作成し、次のSQL文を実行してテスト用のテーブルを自動的に作ります。
  
 <code sql> <code sql>
行 94: 行 93:
 <?php <?php
 require __DIR__.'/../vendor/autoload.php'; require __DIR__.'/../vendor/autoload.php';
 +
 +// データベースファイルの準備
 +$db_file = __DIR__.'/var/db/sample.sqlite';
 +if (!file_exists($db_path=dirname($db_file)))
 +{
 +    mkdir($db_path,null,true);
 +}
  
 // データベース接続 // データベース接続
-ORM::configure('sqlite:./sample.sqlite');+ORM::configure("sqlite:{$db_file}");
  
 // PDOインスタンスを取得し、Raw-SQLでDDL文を実行する(テーブル作成) // PDOインスタンスを取得し、Raw-SQLでDDL文を実行する(テーブル作成)
行 161: 行 167:
 ORM::configure(array( ORM::configure(array(
     'connection_string' => 'mysql:host=localhost;dbname=sunlight_db',     'connection_string' => 'mysql:host=localhost;dbname=sunlight_db',
-    'username' => 'y2sunlight',+    'username' => 'sunlight',
     'password' => 'password',     'password' => 'password',
     'caching' => true,  // Default(false)     'caching' => true,  // Default(false)
     'logging' => true,  // Default(false)     'logging' => true,  // Default(false)
     'logger' => function($log_string, $query_time) {     'logger' => function($log_string, $query_time) {
-      // クエリーログ+      // クエリーログ出力
     },     },
 )); ));
basic-library/idiorm/1.5.1584713042.txt.gz · 最終更新: 2020/03/20 23:04 by y2sunlight