andela-cnnadi/micro-orm

简单的PHP ORM解决方案

dev-master 2015-07-12 00:30 UTC

This package is not auto-updated.

Last update: 2024-09-28 17:33:17 UTC


README

#Cashew - 微型ORM轻量级PHP ORM解决方案。目前仅支持MySQL。

###安装 在您应用程序的根目录中运行以下命令

composer require "andela-cnnadi/micro-orm": "dev-master"

或者,您可以在composer.json文件中将包名 "andela-cnnadi/micro-orm": "dev-master" 添加为依赖项。

###入门要开始使用,您需要配置数据库连接。这可以在包目录中的config文件夹内完成。有一个名为config.php的文件,您可以填写数据库配置信息。

###开始创建模型要创建一个模型,您需要创建一个新的类,该类扩展了Cashew类。每个单独的模型都应该扩展这个类。下面是推荐的文件结构。请参阅示例以获取更多详细信息。默认情况下,Cashew Micro-ORM使用复数约定作为表名。

<?php

class User extends Cashew {

}
// table name `users` will automatically be polled from the database.
?>
<?php

class Animal extends Cashew {

}
// table name `animals` will automatically be polled from the database.
?>
-app
  - vendor
    - micro-orm
  - models
    - User.php
    - Phone.php
  - index.php

模型可以按照以下方式在应用程序中引入

require 'vendor/autoload.php';
require 'models/User.php';
require 'models/Phone.php';

###模型配置选项Model类中的 $model 变量用于存储您正在创建的模型的字段配置。它包含字段名称作为键和字段配置作为值。字段配置包含各种配置选项与所需值的键值对。可用的配置选项包括

  • type - 字段的类型。可用选项包括int、text、varchar、smallint
  • null - (可选) 表示字段是否可以为null的True或False值。如果未指定,则默认为true
  • size - 支持varchar、int等字段。用于指定字段的长度。

以下是一个使用配置选项的模型的示例

<?php

use Chidi\ORM\Cashew;

class User extends Cashew {
  protected $model = [
    'title' => [
      'type' => 'varchar',
      'length' => 255,
      'null' => false
    ],
    'content' => [
      'type' => 'text',
      'null' => false
    ]
  ]
}
?>

####模型方法

  • get - 根据id从表中检索结果。以下是一个示例
  // $id must be a number
  $user = User::get($id);