當前位置: 首頁>>代碼示例>>PHP>>正文


PHP DataObjectCollection::filter方法代碼示例

本文整理匯總了PHP中DataObjectCollection::filter方法的典型用法代碼示例。如果您正苦於以下問題:PHP DataObjectCollection::filter方法的具體用法?PHP DataObjectCollection::filter怎麽用?PHP DataObjectCollection::filter使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在DataObjectCollection的用法示例。


在下文中一共展示了DataObjectCollection::filter方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: parseRelations

 private function parseRelations()
 {
     $map = $this->getMap();
     $mapFields = $map->getFields();
     $relations = array_filter($mapFields, function ($elem) {
         return isset($elem['type']) && $elem['type'] == 'relation';
     });
     if (count($relations) > 0) {
         foreach ($relations as $field => $relation) {
             $relObjectType = $relation['itemType'];
             if (strpos($relObjectType, '\\') === false) {
                 $refClass = new \ReflectionClass($map->getObject());
                 $relObjectType = '\\' . $refClass->getNamespaceName() . "\\" . $relObjectType;
             }
             if (!class_exists($relObjectType)) {
                 throw new \Exception("Can't find relating type " . $relObjectType);
             }
             $relCollection = new DataObjectCollection(new $relObjectType());
             $relCollection->setMapper($this->mapper);
             $conds = array();
             foreach ($relation['conditions'] as $key => $fkey) {
                 if (isset($this->{$key})) {
                     $conds[$fkey] = $this->{$key};
                 } else {
                     throw new \Exception("Can't resolve relation ({$key} => {$fkey}) for " . get_class($this));
                 }
             }
             $relCollection->filter($conds);
             $this->{$field} = $relCollection;
         }
     }
 }
開發者ID:dreamblazenet,項目名稱:crazydatamapper,代碼行數:32,代碼來源:DataObject.php


注:本文中的DataObjectCollection::filter方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。