最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Laravel 中獲取上一篇和下一篇數(shù)據(jù)

 更新時間:2015年07月27日 09:03:17   投稿:hebedich  
這篇文章主要介紹了Laravel 中獲取上一篇和下一篇數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下

首先文章的起源來與SF上面的一個問題:

Laravel的Eloquent ORM 怎么獲取當(dāng)前記錄的下一條

然后,當(dāng)時在答案里面簡單寫了一下解決方案。不過由于這個取得下一條和取得上一條的記錄其實在日常的開發(fā)當(dāng)中還是會經(jīng)常遇到,最常見的場景可能就是取得一篇文章的上一篇文章和下一篇文章了。其實這個在Laravel的Eloquent中實現(xiàn)還是挺容易的,不過由于Laravel并沒有直接提供給我們相應(yīng)的方法,我們得使用一個小小的技巧:

取得上一篇的文章id

protected function getPrevArticleId($id)
  {
    return Article::where('id', '<', $id)->max('id');
  }

$id就是當(dāng)前文章的id,我們通過max()來取得比當(dāng)前id小的最大值,也就是當(dāng)前id的前一篇文章的id。

取得上一篇的文章id

protected function getNextArticleId($id)
  {
    return Article::where('id', '>', $id)->min('id');
  }

基本上可以說是:同理可得。這個取得下一篇文章的id其實就是一個相反的過程,理解萬歲。

一旦我們?nèi)〉蒙弦黄拖乱黄奈恼耰d之后,我們就可以隨心所欲了,比如:

復(fù)制代碼 代碼如下:
$next_article = Article::find($this->getNextArticleId($article->id));

多說兩句

那如果是對于一個文章的管理來說,我們其實可以這么做:

給articles表中增加一個published_at的字段,這里可以將published_at字段設(shè)置為一個Carbon對象,然后我們在前端展示的時候就可以根據(jù)published_at來判讀是否將文章展示出來。

比如說查詢語句:

 public function scopePublished($query)
  {
    $query->where('published_at','<=',Carbon::now());
  }

//以上方法位于Article中,下面的查詢我放在了ArticleController中

$articles = Article::latest('published_at')->published()...

View展示:

<li class="previous">
@if($prev_article)
<a href="/post/{{ $prev_article->slug }}" rel="prev"><i class="fa fa-chevron-left"></i><strong>上一篇</strong><span> {{ $prev_article->title }}</span> </a>
@endif
</li>
<li class="next">
@if($next_article && $next_article->published_at < Carbon\Carbon::now())

<a href="/post/{{ $next_article->slug }}" rel="next"><i class="fa fa-chevron-right"></i><strong>下一篇</strong> <span> {{ $next_article->title }}</span></a>
@endif
</li>

處理文章的前一篇和后一篇的解決方案已完成。

以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。

相關(guān)文章

  • php預(yù)定義變量使用幫助(帶實例)

    php預(yù)定義變量使用幫助(帶實例)

    php取得外部變量的首選方法是用下面提及的超全局變量。在此之前,人們要么依賴 register_globals,要么就是長長的預(yù)定義 PHP 數(shù)組($HTTP_*_VARS)。自 PHP 5.0.0 起,長格式的 PHP 預(yù)定義變量可以通過設(shè)置 register_long_arrays 來屏蔽。
    2013-10-10
  • Zend?Framework基于Command命令行建立Zend?Framework項目的方法

    Zend?Framework基于Command命令行建立Zend?Framework項目的方法

    這篇文章主要介紹了Zend?Framework基于Command命令行建立Zend?Framework項目的方法,較為詳細(xì)的分析了使用Command命令行建立Zend?Framework框架的具體操作步驟與相關(guān)注意事項,需要的朋友可以參考下
    2017-02-02
  • uni-app結(jié)合PHP實現(xiàn)單用戶登陸demo及解析

    uni-app結(jié)合PHP實現(xiàn)單用戶登陸demo及解析

    這篇文章主要為大家介紹了uni-app結(jié)合PHP實現(xiàn)單用戶登陸示例過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • 一個PHP實現(xiàn)的輕量級簡單爬蟲

    一個PHP實現(xiàn)的輕量級簡單爬蟲

    這篇文章主要介紹了一個PHP實現(xiàn)的輕量級簡單爬蟲,本文總結(jié)了爬蟲的一些知識如爬蟲的結(jié)構(gòu)、正則表達(dá)式、其他問題等,然后給出了爬蟲實現(xiàn)代碼,需要的朋友可以參考下
    2015-07-07
  • PHP實現(xiàn)頁面靜態(tài)化深入講解

    PHP實現(xiàn)頁面靜態(tài)化深入講解

    這篇文章主要介紹了PHP實現(xiàn)頁面靜態(tài)化深入講解,本文講解的很透徹,有感興趣的同學(xué)可以研究下
    2021-03-03
  • PHP-FPM和Nginx的通信機(jī)制詳解

    PHP-FPM和Nginx的通信機(jī)制詳解

    這篇文章主要給大家介紹了關(guān)于PHP-FPM和Nginx通信機(jī)制的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-02-02
  • PHP設(shè)計模式之觀察者模式入門與應(yīng)用案例詳解

    PHP設(shè)計模式之觀察者模式入門與應(yīng)用案例詳解

    這篇文章主要介紹了PHP設(shè)計模式之觀察者模式入門與應(yīng)用,結(jié)合具體案例形式詳細(xì)分析了PHP觀察者模式的相關(guān)概念、原理、使用方法及操作注意事項,需要的朋友可以參考下
    2019-12-12
  • PHP中Http協(xié)議post請求參數(shù)

    PHP中Http協(xié)議post請求參數(shù)

    這篇文章主要介紹了Http協(xié)議post請求參數(shù)的相關(guān)資料,需要的朋友可以參考下
    2015-11-11
  • CodeIgniter分頁類pagination使用方法示例

    CodeIgniter分頁類pagination使用方法示例

    這篇文章主要介紹了CodeIgniter分頁類pagination使用方法,結(jié)合實例形式簡單分析了CodeIgniter框架中的分頁類pagination基本的配置與使用技巧,需要的朋友可以參考下
    2016-03-03
  • 如何修改Laravel中url()函數(shù)生成URL的根地址

    如何修改Laravel中url()函數(shù)生成URL的根地址

    這篇文章主要給大家介紹了關(guān)于如何修改Laravel中url()函數(shù)生成URL根地址的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用laravel具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-08-08

最新評論

高雄市| 库车县| 濉溪县| 剑河县| 吉隆县| 漯河市| 靖西县| 武冈市| 双城市| 句容市| 上蔡县| 葫芦岛市| 扶沟县| 江山市| 宁都县| 金寨县| 房山区| 临武县| 河池市| 怀柔区| 武陟县| 正镶白旗| 璧山县| 浑源县| 龙口市| 蒙自县| 成都市| 富阳市| 汶上县| 延吉市| 祁阳县| 奉新县| 漳浦县| 瓮安县| 康马县| 吐鲁番市| 富川| 墨玉县| 专栏| 沁源县| 尖扎县|