スポンサーリンク

PHPORマッパーPropelでデータを読み込むときの話です。

[2008-03-17-1] の続きです。
Criteriaクラスを利用して、ユーザのブログを抽出しました。

このコードだと hoge1 さんのデータがある限り、ひたすら表示します。
<?php
$c = new Criteria();
$c->add(BlogPeer::UID, 'hoge1');
$blogs = BlogPeer::doSelect($c);
foreach ($blogs as $blog) {
	...
}

1ページあたりの表示件数は制限したい、ってのが普通の考えだと思います。
普通にSQL文を考えると limit 節を使います。

10件だけ取り出すなら。

select * from blog where uid='hoge1' limit 10;


これをPropelで書くには、CriteriasetLimitを使います。

<?php
$c = new Criteria();
$c->add(BlogPeer::UID, 'hoge1');
$c->setLimit(10);
$blogs = BlogPeer::doSelect($c);
foreach ($blogs as $blog) {
	...
}

limit節を使い始めるとoffsetも使いたくなります。
1ページあたり10記事で2ページの場合なら

select * from blog where uid='hoge1' limit 10 offset 10;

とするでしょう。
Propelでは、CriteriasetOffsetを使います。

<?php
$c = new Criteria();
$c->add(BlogPeer::UID, 'hoge1');
$c->setLimit(10);
$c->setOffset(10);
$blogs = BlogPeer::doSelect($c);
foreach ($blogs as $blog) {
	...
}

こんな感じでPropelでlimitやoffsetするときは、setLimitやsetOffsetを
使えばよいです。

スポンサーリンク
スポンサーリンク
 
いつもシェア、ありがとうございます!


もっと情報を探しませんか?

関連記事

最近の記事

人気のページ

スポンサーリンク
 

過去ログ

2020 : 01 02 03 04 05 06 07 08 09 10 11 12
2019 : 01 02 03 04 05 06 07 08 09 10 11 12
2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12

サイト

Vim入門

C言語入門

C++入門

JavaScript/Node.js入門

Python入門

FreeBSD入門

Ubuntu入門

セキュリティ入門

パソコン自作入門

ブログ

トップ


プライバシーポリシー