濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > Laravel中9個(gè)不經(jīng)常用的小技巧匯總

Laravel中9個(gè)不經(jīng)常用的小技巧匯總

熱門(mén)標(biāo)簽:保定crm外呼系統(tǒng)運(yùn)營(yíng)商 海南人工外呼系統(tǒng)有效果嗎 抖音有個(gè)地圖標(biāo)注是什么意思 阿里云400電話申請(qǐng)加工單 西區(qū)企業(yè)怎么做地圖標(biāo)注入駐 七魚(yú)外呼系統(tǒng)停用嗎 地下城堡2圖九地圖標(biāo)注 九江外呼系統(tǒng) 智能電話機(jī)器人排名前十名南京

前言

眾所周知Laravel是一套簡(jiǎn)潔、優(yōu)雅的PHP Web開(kāi)發(fā)框架(PHP Web Framework)。下面這篇文章主要給大家總結(jié)了一些Laravel不經(jīng)常用的小技巧,下面話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧

1. 更新父表的timestamps

如果你想在更新關(guān)聯(lián)表的同時(shí),更新父表的timestamps,你只需要在關(guān)聯(lián)表的model中添加touches屬性。
比如我們有Post和Comment兩個(gè)關(guān)聯(lián)模型

?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Comment extends Model
{
 /**
  * 要更新的所有關(guān)聯(lián)表
  *
  * @var array
  */
 protected $touches = ['post'];

 /**
  * Get the post that the comment belongs to.
  */
 public function post()
 {
  return $this->belongsTo('App\Post');
 }
}

2. 懶加載指定字段

$posts = App\Post::with('comment:id,name')->get();

3. 跳轉(zhuǎn)指定控制器并附帶參數(shù)

return redirect()->action('SomeController@method', ['param' => $value]);

4. 關(guān)聯(lián)時(shí)使用withDefault()

在調(diào)用關(guān)聯(lián)時(shí),如果另一個(gè)模型不存在,系統(tǒng)會(huì)拋出一個(gè)致命錯(cuò)誤,例如 $comment->post->title,那么我們就需要使用withDefault()

...
public function post()
{
 return $this->belongsTo(App\Post::class)->withDefault();
}

5. 兩層循環(huán)中使用$loop

在blade的foreach中,如果你想獲取外層循環(huán)的變量

@foreach ($users as $user)  
 @foreach ($user->posts as $post)   
 @if ($loop->parent->first)    
  This is first iteration of the parent loop.   
 @endif  
 @endforeach 
@endforeach

6. 瀏覽郵件而不發(fā)送

如果你使用的是mailables來(lái)發(fā)送郵件,你可以只展示而不發(fā)送郵件

Route::get('/mailable', function () {
 $invoice = App\Invoice::find(1);
 return new App\Mail\InvoicePaid($invoice);
});

7. 通過(guò)關(guān)聯(lián)查詢記錄

在hasMany關(guān)聯(lián)關(guān)系中,你可以查詢出關(guān)聯(lián)記錄必須大于5的記錄

$posts = Post::has('comment', '>', 5)->get();

8. 軟刪除

查看包含軟刪除的記錄

$posts = Post::withTrashed()->get();

查看僅被軟刪除的記錄

$posts = Post::onlyTrashed()->get();

恢復(fù)軟刪除的模型

Post::withTrashed()->restore();

9. Eloquent時(shí)間方法

$posts = Post::whereDate('created_at', '2018-01-31')->get(); 
$posts = Post::whereMonth('created_at', '12')->get(); 
$posts = Post::whereDay('created_at', '31')->get(); 
$posts = Post::whereYear('created_at', date('Y'))->get(); 
$posts = Post::whereTime('created_at', '=', '14:13:58')->get();

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。

您可能感興趣的文章:
  • PHP框架Laravel的小技巧兩則
  • Laravel框架之blade模板新手入門(mén)教程及小技巧
  • Laravel框架路由配置總結(jié)、設(shè)置技巧大全
  • laravel技巧之查詢構(gòu)造器Query Builder疊加鏈?zhǔn)秸{(diào)用的方法
  • 詳談PHP程序Laravel 5框架的優(yōu)化技巧

標(biāo)簽:甘肅 九江 韶關(guān) 十堰 昭通 涼山 遼陽(yáng) 梅河口

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Laravel中9個(gè)不經(jīng)常用的小技巧匯總》,本文關(guān)鍵詞  Laravel,中,9個(gè),不經(jīng)常,用的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Laravel中9個(gè)不經(jīng)常用的小技巧匯總》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Laravel中9個(gè)不經(jīng)常用的小技巧匯總的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    奉新县| 夹江县| 德安县| 玛多县| 祁门县| 岳阳县| 白水县| 兰州市| 游戏| 大宁县| 新兴县| 黑河市| 德昌县| 五河县| 定日县| 巴塘县| 台中县| 仁寿县| 延长县| 台东市| 广水市| 措美县| 偏关县| 吕梁市| 泊头市| 宜春市| 河曲县| 漳平市| 巨野县| 长寿区| 张家界市| 南郑县| 商水县| 阿尔山市| 淳安县| 许昌市| 绍兴县| 玉田县| 陆河县| 阿克| 奉新县|