php orm 作用,关于PHP的数据层类库NotORM的使用

介绍和概念 :

它是一个 PHP 库,用来简化和数据库的交互。最有特色的功能是处理表关联关系非常简单。另外 NotORM 的性能非常的高,甚至高过内置的驱动。(个人观点:不一定,但是对于新手来说。NotORM拼凑的sql语句性能还是比手写的要高)

提示:

对于这类库。没啥好高深的,就是拼凑sql语句。只不过人家老外拼的比较牛逼。

下载地址:

http://www.notorm.com/  请大家自行下载

使用限制条件:

1、至少PHP 5.1 以上。这个没的说。如果谁还在用PHP 4.x 那就没意思了。版本太美,不敢看

2、需要开启PDO支持。啥是PDO?

PDO是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,什么 php_mysql.dll、php_pgsql.dll、php_mssql.dll、php_sqlite.dll等等扩展来连接MySQL、PostgreSQL、MS SQL Server、SQLite,同样的,我们必须借助 ADOdb、PEAR::DB、PHPlib::DB之类的数据库抽象类来帮助我们,无比烦琐和低效,毕竟,php代码的效率怎么能够我们直接用C/C++写的扩展斜率高捏?所以嘛,PDO的出现是必然的,大家要平静学习的心态去接受使用,也许你会发现能够减少你不少功夫哦。

说白了。PHP的作者在以前水平还不够高。还没想到这么干。并不是PHP的知识点特别多

测试一下:

首先我们假设有两张表

1、新闻表news ,字段如下

id  int  主键

title varchar(50) 标题

news_classid 新闻类别ID。 外键,这个很重要。后面要演示 关联

2、新闻类别表news_class

id  int 主键

classname 类名

开始写代码

include(“NotORM.php”);  //不要问我这句话哪来的。你下载好后,必然会有这个文件

$pdo = new PDO(“mysql:host=localhost;dbname=myweb”,”root”,”123″);//不要问我为什么我会这么写。看php官方文档即可。不要深究

//注意PDO是 php的PDO实现,自带的。和NotORM半毛钱都没关系

$structure = new NotORM_Structure_Convention(

$primary = ‘id’,  //这里告诉notorm 我们的主键都是id 这种英文单词

$foreign = ‘%sid’,  //同理,外键都是 外表名+id    这个很重要,否则notorm拼接sql的时候会拼错。

$table = ‘%s’,

$prefix = ”

);

$db=new NotORM($pdo,$structure); //初始化

foreach($db->news() as $n)

{

echo $n->news[“title”];  //打印标题

echo $n->news_class[“class_name”]; //打印和 news_class表关联后的 类别名

}

有几个注意的地方:

1、notorm对字段名的要求很高。 外键不要乱写。  譬如news_class是类别表。 那么news表里的类别字段必须是 news_classid。否则一切玩完

2、$db->news() ;   就代表 执行了 select * from news 这个sql语句

3、 echo $db->news();  可以查看 notorm到底拼凑了 一个什么样的sql

其他的。大家看官方文档吧。 简单的很。

这里也强烈推荐大家使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值