0
我的PHP應用程序中有一個加載的Doctrine實體。如何檢查是否填充了Doctrine的數組集合?
如何檢查Doctrine的數組集合是否已經填充數據而不觸發數據庫請求?
我需要這在我的實體序列化邏輯。
我不知道該用isEmpty()
的提出的解決方案是一個很好的,因爲我不知道它是否會觸發數據庫呼叫。可以?
我的PHP應用程序中有一個加載的Doctrine實體。如何檢查是否填充了Doctrine的數組集合?
如何檢查Doctrine的數組集合是否已經填充數據而不觸發數據庫請求?
我需要這在我的實體序列化邏輯。
我不知道該用isEmpty()
的提出的解決方案是一個很好的,因爲我不知道它是否會觸發數據庫呼叫。可以?
public function isCollectionPopulated()
{
if ($this->collection instanceof PersistentCollection) {
return $this->collection->isInitialized();
}
// else collection instance of ArrayCollection and already populated.
return true;
}
的[檢查的ArrayCollection是空的(http://stackoverflow.com/questions/17643047/check-if-arraycollection-is-empty) –
收集可能在兩種情況下是空的可能的複製,當數據庫中沒有相關實體,並且尚未加載相關實體。我對第二種情況感興趣。我不確定提供的答案,即'isEmpty()'實際上是否觸發數據庫調用。 –