sena/nogal.se

Nogal (学生版) - 这是一个基于DAO(数据访问对象)的PHP7 ORM实现,用于哥伦比亚国家学习服务SENA的学习环境。

0.0.6 2018-05-11 02:52 UTC

This package is auto-updated.

Last update: 2024-09-06 17:08:06 UTC


README

这是一个基于DAO(数据访问对象)的PHP7 ORM编程模型的微小实现,用于哥伦比亚国家学习服务SENA的学习环境。

安装

要能够在项目中使用Nogal SE,您必须已安装Composer工具。

composer require sena/nogal.se

模型结构

Nogal (学生版) 提出以下结构。

+--------------------
| model/
|-- base/
|---- UserBase.php
|-- User.php
+--------------------

为了解释上述内容,我们需要从以下SQL结构开始,用于User表。

CREATE TABLE DbUser (
    Id int,
    Nick varchar(20),
    Password varchar(32),
    Actived boolean DEFAULT true,
    Created_at timestamp DEFAULT NOW()
);

User.php文件

以下代码将是User.php文件的内容。

<?php

namespace MyApp\model;

use MyApp\model\base\UserBase;

class User extends UserBase
{
  
}

在这些文件中,将放置与User表相关的业务逻辑,例如:我需要查询一个用户的id。

 <?php
 
 namespace MyApp\model;
 
 use MyApp\model\base\UserBase;
 
 class User extends UserBase
 {
   public function SearchIdByUser()
   {
     $sql  = 'SELECT Id FROM DbUser WHERE Nick = :nick';
     $this->SetDbParam(':nick', $this->getNick(), \PDO::PARAM_STR);
     $data = $this->Query($sql);
     if (count($data) > 0) {
       return $data;
     }
     else {
       return false;
     }
   }
 }

UserBase.php文件

此文件包含User表的基本结构,可以表示为以下形式