首頁  >  文章  >  後端開發  >  如何在 Laravel 中檢查相關模型是否存在?

如何在 Laravel 中檢查相關模型是否存在?

Barbara Streisand
Barbara Streisand原創
2024-11-05 17:42:02624瀏覽

How to Check for the Existence of a Related Model in Laravel?

Laravel:檢查相關模型是否存在

構建具有關係的Laravel 模型時,確定相關模型是否存在至關重要用於處理更新和創建。在相關模型最初可能不存在的情況下,有必要檢查其是否存在。

PHP 7.2 以上版本的解決方案:

對於PHP 7.2 以上版本,簡單的解決方案是在關係上使用exists()方法object:

<code class="php">$model->relation()->exists();</code>

PHP 7.2 之前的通用解決方案:

對於PHP 7.2 之前的版本,存在適用於所有關係類型的通用解決方案:

<code class="php">if (count($model->relation))
{
  // exists
}</code>

了解評估:

  • 單一關係:如果相關模型存在,count() 回傳1 (true)。如果不存在,count()回傳0(false)。
  • 多對多關係:當不存在相關模型時,count()回傳0(false),表示一個不存在的集合。如果存在相關模型,則無論模型數量有多少,count() 都會傳回正整數 (true)。

範例用法:

在您的場景中,您可以使用以下程式碼來檢查選項模型是否存在:

<code class="php">if (Input::has('option')) {
    if ($model->option()->exists()) {
        // update option
    } else {
       // create option
    }
};</code>

以上是如何在 Laravel 中檢查相關模型是否存在?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn