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


PHP Board::whereIn方法代碼示例

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


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

示例1: getCites

 /**
  * Returns a collection of posts as cited in a post's text body.
  *
  * @param  \App\Post $post
  * @return Collection
  */
 public static function getCites(Post $post)
 {
     $postCites = [];
     $boardCites = [];
     $lines = explode("\n", $post->body);
     $relative = "/\\s?&gt;&gt;(?P<board_id>\\d+)\\s?/";
     $global = "/\\s?&gt;&gt;&gt;\\/(?P<board_uri>" . Board::URI_PATTERN_INNER . ")\\/(?P<board_id>\\d+)?\\s?/";
     foreach ($lines as $line) {
         $line = str_replace(">", "&gt;", $line);
         preg_match_all($relative, $line, $relativeMatch);
         preg_match_all($global, $line, $globalMatch);
         if (isset($relativeMatch['board_id'])) {
             foreach ($relativeMatch['board_id'] as $matchIndex => $matchBoardId) {
                 $postCites[] = ['board_uri' => $post->board_uri, 'board_id' => $matchBoardId];
             }
         }
         if (isset($globalMatch['board_uri'])) {
             foreach ($globalMatch['board_uri'] as $matchIndex => $matchBoardUri) {
                 $matchBoardId = $globalMatch['board_id'][$matchIndex];
                 if ($matchBoardId != "") {
                     $postCites[] = ['board_uri' => $matchBoardUri, 'board_id' => $matchBoardId];
                 } else {
                     $boardCites[] = $matchBoardUri;
                 }
             }
         }
     }
     // Fetch all the boards and relevant content.
     if (count($boardCites)) {
         $boards = Board::whereIn('board_uri', $boardCites)->get();
     } else {
         $boards = new Collection();
     }
     if (count($postCites)) {
         $posts = Post::where(function ($query) use($postCites) {
             foreach ($postCites as $postCite) {
                 $query->orWhere(function ($query) use($postCite) {
                     $query->where('board_uri', $postCite['board_uri'])->where('board_id', $postCite['board_id']);
                 });
             }
         })->get();
     } else {
         $posts = new Collection();
     }
     return ['boards' => $boards, 'posts' => $posts];
 }
開發者ID:GodOfConquest,項目名稱:infinity-next,代碼行數:52,代碼來源:ContentFormatter.php

示例2: getBoardsWithConfigRights

 /**
  * Returns a list of board_uris where the canEditConfig permission is given.
  *
  */
 public function getBoardsWithConfigRights()
 {
     $boards = [];
     foreach ($this->getPermissions() as $board_uri => $permissions) {
         if ($this->canEditConfig($board_uri)) {
             if ($board_uri == "") {
                 return Board::andCreator()->andOperator()->get();
             } else {
                 $boards[] = $board_uri;
             }
         }
     }
     return Board::whereIn('board_uri', $boards)->andCreator()->andOperator()->get();
 }
開發者ID:Ryangr0,項目名稱:infinity-next,代碼行數:18,代碼來源:PermissionUser.php


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