龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

NotORM(PHP的ORM框架)示例代码

时间:2014-07-22 14:52来源: 作者: 点击:
分享到:
pNotORM 是一个 PHP 库,用来简化和数据库的交互。最有特色的功能是处理表关联关系非常简单。另外 NotORM 的性能非常的高,设置高过内置的驱动。/p

NotORM 是一个 PHP 库,用来简化和数据库的交互。最有特色的功能是处理表关联关系非常简单。另外 NotORM 的性能非常的高,设置高过内置的驱动。


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

2. [代码]读取数据     跳至 [1] [2] [3] [4] [5] [6] [7] [8] [全屏预览]

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

3. [代码]条件查询     跳至 [1] [2] [3] [4] [5] [6] [7] [8] [全屏预览]

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

4. [代码]读取结果     跳至 [1] [2] [3] [4] [5] [6] [7] [8] [全屏预览]

$application = $db->application[1]; // get by primary key
$application = $db->application("title = ?", "Adminer")->fetch();

5. [代码]处理表关联     跳至 [1] [2] [3] [4] [5] [6] [7] [8] [全屏预览]

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
}

6. [代码]JOIN联合查询     跳至 [1] [2] [3] [4] [5] [6] [7] [8] [全屏预览]

// get all applications ordered by author's name
foreach ($db->application()->order("author.name") as $application) {
    echo $application->author["name"] . ": $application[title]\n";
}

7. [代码]结果集分组     跳至 [1] [2] [3] [4] [5] [6] [7] [8] [全屏预览]

echo $db->application()->max("id"); // get maximum ID
foreach ($db->application() as $application) {
    // get count of each application's tags
    echo $application->application_tag()->count("*") . "\n";
}

8. [代码]完整例子     跳至 [1] [2] [3] [4] [5] [6] [7] [8] [全屏预览]

<?php
include "NotORM.php";
$connection = new PDO("mysql:dbname=software");
$software = new NotORM($connection);

foreach ($software->application()->order("title") as $application) { // get all applications ordered by title
    echo "$application[title]\n"; // print application title
    echo $application->author["name"] . "\n"; // print 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
    }
}
?>
精彩图集

赞助商链接