NotORM 简介

NotORM 是一个 PHP 库,用于简化处理数据库中的数据。最有趣的功能是,表与表之间的关系非常容易的处理。整体性能也非常高,NotORM 实际上可以比原生驱动程序运行得更快。用于数据库的 NotORM 就像用于 XML 文档的 SimpleXML。

NotORM提供了非常直观的API。

连接

<?php
$pdo = new PDO("mysql:dbname=software");
$db = new NotORM($pdo);

NotORM 使用 PDO 来访问数据库。

读取数据

<?php
foreach ($db->application() as $application) { // get all applications
    echo "$application[title]\n"; // print application title
}

使用方法调用来从表中获取行。 使用方括号来访问列值。

限定行数

<?php
$applications = $db->application()
    ->select("id, title")
    ->where("web LIKE ?", "http://%")
    ->order("title")
    ->limit(10)
;
foreach ($applications as $id => $application) {
    echo "$application[title]\n";
}

获取单行

<?php
$application = $db->application[1]; // 通过主键获取
$application = $db->application("title = ?", "Adminer")->fetch();

关系

<?php
echo $application->author["name"] . "\n"; // get name of the application author
foreach ($application->application_tag() as $application_tag) { // get all tags of $application
    echo $application_tag->tag["name"] . "\n"; // print the tag name
}

关联(join)

<?php
foreach ($db->application()->order("author.name") as $application) {
    echo $application->author["name"] . ": $application[title]\n";
}

分组

<?php
echo $db->application()->max("id"); // 获取最大ID
foreach ($db->application() as $application) {
    // get count of each application's tags
    echo $application->application_tag()->count("*") . "\n";
}
notorm 2018-03-18 16:35 1878990