当前位置: 首页>>代码示例>>PHP>>正文


PHP Content::select方法代码示例

本文整理汇总了PHP中Content::select方法的典型用法代码示例。如果您正苦于以下问题:PHP Content::select方法的具体用法?PHP Content::select怎么用?PHP Content::select使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Content的用法示例。


在下文中一共展示了Content::select方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: search

 /**
  * Search
  */
 public static function search($what, $options = array('state' => 1, 'created_by' => false))
 {
     $terms = explode(' ', $what);
     $query = Content::select('content.id', 'content.title', 'content.slug', 'introtext', 'catid', 'created_by', 'created_by_alias', 'content.hits', 'content.created_at', 'categories.path', 'state');
     if (isset($options['state']) && $options['state'] == 1) {
         $query->where('state', 1);
     }
     if (isset($options['created_by']) && $options['created_by'] !== false) {
         $query->where('created_by', $options['created_by']);
     }
     $query->whereNested(function ($query) use($terms) {
         foreach ($terms as $term) {
             if (mb_strlen($term, 'UTF-8') > 1) {
                 $query->orWhere('content.title', 'LIKE', "%{$term}%");
                 $query->orWhere('content.introtext', 'LIKE', "%{$term}%");
                 $query->orWhere('content.fullcontent', 'LIKE', "%{$term}%");
             }
         }
     });
     return $query->join('categories', 'content.catid', '=', 'categories.id')->orderBy('id', 'desc')->paginate(20);
 }
开发者ID:hristodinev,项目名称:site,代码行数:24,代码来源:Content.php

示例2: editAction

 /** Edit a content article
  * @access public
  * @return void
  * @throws Pas_Exception_Param
  */
 public function editAction()
 {
     if ($this->getParam('id', false)) {
         $form = new ContentForm();
         $form->submit->setLabel('Submit changes');
         $form->author->setValue($this->getIdentityForForms());
         $this->view->form = $form;
         if ($this->getRequest()->isPost() && $form->isValid($this->_request->getPost())) {
             if ($form->isValid($form->getValues())) {
                 $updateData = $form->getValues();
                 $where = array();
                 $where[] = $this->_content->getAdapter()->quoteInto('id = ?', $this->getParam('id'));
                 $oldData = $this->_content->fetchRow($this->_content->select()->where('id= ?', (int) $this->getParam('id')))->toArray();
                 $this->_helper->audit($updateData, $oldData, 'ContentAudit', $this->getParam('id'), $this->getParam('id'));
                 $this->_content->update($updateData, $where);
                 $this->_helper->solrUpdater->update('content', $this->getParam('id'));
                 $this->getFlash()->addMessage('You updated successfully. It is now available for use.');
                 $this->getCache()->clean(Zend_Cache::CLEANING_MODE_ALL);
                 $this->redirect('admin/content/');
             } else {
                 $form->populate($this->_request->getPost());
             }
         } else {
             // find id is expected in $params['id']
             $id = (int) $this->_request->getParam('id', 0);
             if ($id > 0) {
                 $content = $this->_content->fetchRow('id=' . (int) $id)->toArray();
                 if ($content) {
                     $form->populate($content);
                 } else {
                     throw new Pas_Exception_Param($this->_nothingFound);
                 }
             }
         }
     } else {
         throw new Pas_Exception_Param($this->_missingParameter, 500);
     }
 }
开发者ID:lesleyauk,项目名称:findsorguk,代码行数:43,代码来源:ContentController.php

示例3: foreach

 function build_autos($items, $data, $user)
 {
     foreach ($items as $index => &$item) {
         if (isset($item['auto'])) {
             if (isset($data['urls'][$item['auto']])) {
                 $item['path'] = $data['urls'][$item['auto']];
             } else {
                 if ($item['auto'] === 'set') {
                     $item['path'] = '';
                 }
             }
             if ($item['auto'] === 'profile') {
                 switch ($item['id']) {
                     case 'twitter':
                         $item['path'] = 'https://twitter.com/' . $user->twitter;
                         break;
                     default:
                         $item['path'] = $user->{$item['id']};
                         if (empty($item['path'])) {
                             unset($items[$index]);
                             continue;
                         }
                         break;
                 }
                 if (!isset($item['label']) || empty($item['label'])) {
                     $item['label'] = ucwords($item['id']) . ($item['id'] === 'google' ? '+' : '');
                 }
             } else {
                 if ($item['auto'] === 'rss') {
                     $item['path'] = '/feed/' . $item['id'] . ($item['id'] === 'essay' ? 's' : '') . '/recent.rss';
                     if (!isset($item['label'])) {
                         $item['label'] = $data['url_data'][$item['id']]['plural'] . ' RSS';
                     }
                 } else {
                     if (preg_match('/s$/', $item['auto']) || $item['auto'] === 'timeline') {
                         if ($item['auto'] === 'timeline' && isset($item['year'])) {
                             $item['path'] .= $item['year'] . '/';
                             if (isset($item['month']) && $item['month'] !== false && $item['month'] !== 'any') {
                                 $m = str_pad($item['month'], 2, '0', STR_PAD_LEFT);
                                 $item['path'] .= $m . '/';
                             }
                         }
                         if (strpos($item['auto'], '_') !== false) {
                             foreach (array('id', 'slug', 'month', 'year', 'day') as $id) {
                                 if ($id === 'month') {
                                     if (!isset($item['month']) || $item['month'] === 'any' || $item['month'] === false) {
                                         $item['month'] = '';
                                     } else {
                                         $item['month'] = str_pad($item['month'], 2, '0', STR_PAD_LEFT);
                                     }
                                 }
                                 if ($id === 'day' && !isset($item['day'])) {
                                     $item['day'] = '';
                                 }
                                 if ($id === 'slug' && !isset($item['slug']) && isset($item['id'])) {
                                     if (strpos($item['auto'], 'tag_') === 0) {
                                         $item['slug'] = $item['id'];
                                     } else {
                                         $c = new Category();
                                         if (is_numeric($item['id'])) {
                                             $c->select('slug')->get_by_id($item['id']);
                                             $item['slug'] = $c->slug;
                                         } else {
                                             $item['slug'] = $item['id'];
                                         }
                                     }
                                 }
                                 if (isset($item[$id])) {
                                     $item['path'] = str_replace(":{$id}", $item[$id], $item['path']);
                                 }
                             }
                         } else {
                             if (!isset($item['label'])) {
                                 $item['label'] = $data['url_data'][$item['auto'] === 'categories' ? 'category' : rtrim($item['auto'], 's')]['plural'];
                             }
                         }
                     } else {
                         if ($item['auto'] === 'home') {
                             if (!isset($item['label'])) {
                                 $item['label'] = $data['url_data']['home'];
                             }
                             $item['path'] = '/home/';
                         } else {
                             if ($item['auto'] === 'album' || $item['auto'] === 'set') {
                                 $a = new Album();
                                 $a->select('id,slug,created_on,title');
                                 if (is_numeric($item['id'])) {
                                     $a->where('id', $item['id']);
                                 } else {
                                     $a->where('slug', $item['id'])->or_where('internal_id', $item['id']);
                                 }
                                 $a->get();
                                 if (!$a->exists()) {
                                     unset($items[$index]);
                                     continue;
                                 }
                                 $item['path'] = str_replace(':id', $a->id, $item['path']);
                                 $item['path'] = str_replace(':slug', $a->slug, $item['path']);
                                 $item['path'] = str_replace(':year', date('Y', $a->created_on), $item['path']);
                                 $item['path'] = str_replace(':month', date('m', $a->created_on), $item['path']);
//.........这里部分代码省略.........
开发者ID:Caldis,项目名称:htdocs,代码行数:101,代码来源:sites.php

示例4: Slug

<?php

$s = new Slug();
$slug_count = $s->like('id', 'content.', 'after')->count();
$c = new Content();
$content_count = $c->count();
if ($slug_count < $content_count) {
    $slugs = array();
    $c = new Content();
    foreach ($c->select('slug')->get_iterated() as $content) {
        $slugs[] = "('content." . $content->slug . "')";
    }
    $slugs = join(', ', $slugs);
    $this->db->query("INSERT INTO {$s->table}(id) VALUES {$slugs} ON DUPLICATE KEY UPDATE id=id;");
}
$done = true;
开发者ID:Atomox,项目名称:benhelmerphotography,代码行数:16,代码来源:0018.php

示例5: rateContent

 /**
  * rateContent() - handles rating a content
  * @param int @id - which content
  * @return void
  */
 public function rateContent($id)
 {
     try {
         $content = Content::select('id')->findOrFail($id);
     } catch (Exception $e) {
         App::abort(404);
     }
     $rating = ContentRating::select('id', 'rating_sum', 'rating_count', 'lastip')->where('content_id', $id)->first();
     $sanitize = new Sanitizer(Input::all());
     Input::merge($sanitize->get());
     $validate = new ContentRating();
     if ($validate->validate(Input::all())) {
         if ($rating) {
             // Update and save
             if (Request::getClientIp() != $rating->lastip) {
                 $rating->rating_sum = $rating->rating_sum + Input::get('rate');
                 $rating->rating_count = $rating->rating_count + 1;
                 $rating->lastip = Request::getClientIp();
                 $rating->save();
                 //return with success message
             } else {
                 return Redirect::back()->withErrors(array('failure' => 'Вече сте гласували за този урок.'));
             }
         } else {
             // First time voting for this content, we have to make a new record in the database
             $validate->content_id = $id;
             $validate->rating_sum = Input::get('rate');
             $validate->rating_count = 1;
             $validate->lastip = Request::getClientIp();
             $validate->save();
         }
         return Redirect::back()->withErrors(array('success' => 'Вашият глас беше записан успешно.'));
     }
     return Redirect::back()->withErrors(array('failure' => 'Грешка, моля опитайте отново.'));
 }
开发者ID:hristodinev,项目名称:site,代码行数:40,代码来源:HomeController.php

示例6: aggregate

 function aggregate($type, $options = array())
 {
     $options = array_merge(array('featured' => false), $options);
     $shared_params = array();
     if ($type === 'tag') {
         $shared_params['tags'] = $options['tag_slug'];
     } else {
         if ($type === 'category') {
             $shared_params['category'] = $options['category'];
         }
     }
     $album_params = $shared_params;
     $date_marker = false;
     if ($type === 'date') {
         $s = new Setting();
         $s->where('name', 'site_timezone')->get();
         $tz = new DateTimeZone($s->value);
         $offset = $tz->getOffset(new DateTime('now', new DateTimeZone('UTC')));
         if ($offset === 0) {
             $shift = '';
         } else {
             $shift = ($offset < 0 ? '-' : '+') . abs($offset);
         }
         // Need to - the offset here, as we need to shift this timestamp by the inverse of the offset to match DB UTC time.
         // For example. Midnight in user's time (say, CT -5) is UTC+5.
         $album_params['before'] = $date_marker = strtotime("{$options['year']}-{$options['month']}-{$options['day']} 23:59:59") - $offset;
     }
     $aggregate = $essay_ids = $album_ids = $content_ids = $updated_album_ids = $exclude_albums = $exclude_content = $sets = $range = array();
     $t = new Text();
     $t->select('id, featured, featured_image_id, published_on')->where('page_type', 0)->where('published', 1);
     if ($type === 'date') {
         $t->where("YEAR(FROM_UNIXTIME({$t->table}.published_on{$shift}))", $options['year'])->where("MONTH(FROM_UNIXTIME({$t->table}.published_on{$shift}))", $options['month'])->where("DAY(FROM_UNIXTIME({$t->table}.published_on{$shift}))", $options['day']);
     } else {
         if ($type === 'tag') {
             $t->where_related('tag', 'id', $options['tag']);
         } else {
             $t->where_related('category', 'id', $options['category']);
         }
     }
     if ($options['featured']) {
         $t->where('featured', 1);
     }
     $t->include_related('album', 'id')->order_by($t->table . '.published_on DESC')->get_iterated();
     foreach ($t as $essay) {
         $essay_ids[$essay->id] = $essay->published_on;
         $aggregate[] = array('type' => 'essay', 'id' => $essay->id, 'date' => $essay->published_on, 'featured' => $essay->featured);
         if ($essay->album_id) {
             $exclude_albums[] = $essay->album_id;
         }
         if (is_numeric($essay->featured_image_id)) {
             $exclude_content[] = $essay->featured_image_id;
         }
     }
     $a = new Album();
     $a->select('id, featured, published_on, left_id, right_id, level')->where('visibility', 0)->where('deleted', 0)->where('total_count >', 0);
     if ($type === 'date') {
         $a->where("YEAR(FROM_UNIXTIME({$a->table}.published_on{$shift}))", $options['year'])->where("MONTH(FROM_UNIXTIME({$a->table}.published_on{$shift}))", $options['month'])->where("DAY(FROM_UNIXTIME({$a->table}.published_on{$shift}))", $options['day']);
     } else {
         if ($type === 'tag') {
             $a->where_related('tag', 'id', $options['tag']);
         } else {
             $a->where_related('category', 'id', $options['category']);
         }
     }
     if ($options['featured']) {
         $a->where('featured', 1);
     }
     $a->include_related('content', 'id')->order_by($a->table . '.published_on DESC')->get_iterated();
     foreach ($a as $album) {
         if (is_numeric($album->content_id)) {
             $exclude_content[] = $album->content_id;
         }
         if (!array_key_exists($album->id, $album_ids) && !in_array($album->id, $exclude_albums)) {
             $album_ids[$album->id] = $album->published_on;
             $aggregate[] = array('type' => 'album', 'id' => $album->id, 'date' => $album->published_on, 'featured' => $album->featured);
         }
         if ($album->level < 2) {
             $range = array_merge($range, range($album->left_id, $album->right_id));
         }
         if ($album->level > 1) {
             $sets[$album->id] = $album->left_id;
         }
     }
     foreach ($sets as $id => $left) {
         if (in_array($left, $range)) {
             unset($album_ids[$id]);
             foreach ($aggregate as $i => $info) {
                 if ($info['type'] === 'album' && $info['id'] == $id) {
                     unset($aggregate[$i]);
                 }
             }
         }
     }
     $c = new Content();
     $c->select('id, published_on, featured');
     if (!empty($exclude_content)) {
         $c->where_not_in('id', $exclude_content);
     }
     $c->where('visibility', 0)->where('deleted', 0);
     if ($type === 'date') {
//.........这里部分代码省略.........
开发者ID:Caldis,项目名称:htdocs,代码行数:101,代码来源:Koken_Controller.php

示例7: listing


//.........这里部分代码省略.........
                 }
             } else {
                 $this->group_start();
                 $this->like($options['search_filter'], $term, 'both');
                 $this->group_end();
             }
         } else {
             $this->group_start();
             $this->like('title', $term, 'both');
             $this->or_like('caption', $term, 'both');
             $t = new Tag();
             $t->where('name', $term)->get();
             if ($t->exists()) {
                 $this->or_where_related('tag', 'id', $t->id);
             }
             $this->group_end();
         }
     } else {
         if ($options['tags'] || $options['tags_not']) {
             $this->_do_tag_filtering($options);
         }
     }
     if (!is_null($options['featured'])) {
         $this->where('featured', $options['featured']);
     }
     if (!is_null($options['favorites'])) {
         $this->where('favorite', $options['favorites']);
     }
     if ($options['category']) {
         $this->where_related('category', 'id', $options['category']);
     } else {
         if ($options['category_not']) {
             $cat = new Content();
             $cat->select('id')->where_related('category', 'id', $options['category_not'])->get_iterated();
             $cids = array();
             foreach ($cat as $c) {
                 $cids[] = $c->id;
             }
             $this->where_not_in('id', $cids);
         }
     }
     if ($options['after']) {
         $this->where($options['after_column'] . ' >=', $options['after']);
     }
     if ($options['before']) {
         $this->where($options['before_column'] . ' <=', $options['before']);
     }
     if ($options['visibility'] === 'album') {
         $this->where('visibility <', $options['in_album']->visibility + 1);
     } else {
         if ($options['visibility'] !== false) {
             $this->where('visibility', $options['visibility']);
         }
     }
     if ($id) {
         $sql_order = "ORDER BY FIELD(id,{$id})";
         $id = explode(',', $id);
         $this->where_in('id', $id);
     }
     if ($options['order_by'] === 'captured_on' || $options['order_by'] === 'uploaded_on' || $options['order_by'] === 'modified_on' || $options['order_by'] === 'published_on') {
         $bounds_order = $options['order_by'];
     } else {
         $bounds_order = 'published_on';
     }
     $s = new Setting();
     $s->where('name', 'site_timezone')->get();
开发者ID:Atomox,项目名称:benhelmerphotography,代码行数:67,代码来源:content.php

示例8: array

 function _do_match_visibility($params = false)
 {
     if (!$params) {
         $params = array('left_id' => $this->left_id, 'right_id' => $this->right_id, 'visibility' => $this->visibility);
     }
     $aggregator = new Album();
     $aggregator->select('id')->where('left_id >=', $params['left_id'])->where('right_id <=', $params['right_id'])->get_iterated();
     $ids = array();
     foreach ($aggregator as $album) {
         $ids[] = $album->id;
     }
     $c = new Content();
     $c->select('id')->where_in_related('album', 'id', $ids)->get_iterated();
     $cids = array();
     foreach ($c as $content) {
         $cids[] = $content->id;
     }
     if (count($cids)) {
         $c = new Content();
         $c->where_in('id', $cids);
         if ($this->old_visibility < 2) {
             $c->where('visibility <', 2);
         }
         $c->update(array('visibility' => $params['visibility']));
     }
 }
开发者ID:Atomox,项目名称:benhelmerphotography,代码行数:26,代码来源:album.php

示例9: Setting

 function _all($params)
 {
     $s = new Setting();
     $s->where('name', 'site_timezone')->get();
     $tz = new DateTimeZone($s->value);
     $offset = $tz->getOffset(new DateTime('now', new DateTimeZone('UTC')));
     if ($offset === 0) {
         $shift = '';
     } else {
         $shift = ($offset < 0 ? '-' : '+') . abs($offset);
     }
     $content_col = $params['content_column'];
     $select = "COUNT(*) as count, YEAR(FROM_UNIXTIME({$content_col}{$shift})) as event_year";
     $group = 'event_year';
     $order = 'event_year DESC';
     if (!$params['scope'] || $params['scope'] !== 'year') {
         $select .= ", MONTH(FROM_UNIXTIME({$content_col}{$shift})) as event_month";
         $group .= ',event_month';
         $order .= ',event_month DESC';
     }
     if (!$params['limit_to'] && !$params['scope']) {
         $select .= ", DAY(FROM_UNIXTIME({$content_col}{$shift})) as event_day";
         $group .= ',event_day';
         $order .= ',event_day DESC';
     }
     $a = new Album();
     $c = new Content();
     $t = new Text();
     $c->select(str_replace($content_col, $c->table . '.' . $content_col, $select))->include_related('album', 'id')->where('visibility', 0)->where('deleted', 0);
     if (!$params['limit_to']) {
         $c->group_start()->where('album_id', null)->or_where($c->table . '.published_on > `' . $a->table . '`.`published_on`')->group_end();
     }
     $a->select(str_replace($content_col, 'published_on', $select))->where('visibility', 0)->where('deleted', 0)->where('total_count >', 0);
     $t->select(str_replace($content_col, 'published_on', $select))->where('page_type', 0)->where('published', 1);
     if ($params['featured']) {
         $c->where('featured', 1);
         $a->where('featured', 1);
         $t->where('featured', 1);
     }
     $c->group_by($group)->order_by($order);
     $t->group_by($group)->order_by($order);
     $a->group_by($group)->order_by($order);
     $dates = array();
     if (!$params['limit_to'] || $params['limit_to'] === 'content') {
         foreach ($c->get_iterated() as $content) {
             if ($params['scope'] === 'year') {
                 $key = "{$content->event_year}";
             } else {
                 if ($params['limit_to'] || $params['scope']) {
                     $key = "{$content->event_year}-{$content->event_month}";
                 } else {
                     $key = "{$content->event_year}-{$content->event_month}-{$content->event_day}";
                 }
             }
             $key = strtotime($key);
             if (is_numeric($content->event_year)) {
                 $dates[$key] = array('year' => (int) $content->event_year, 'month' => (int) $content->event_month, 'day' => (int) $content->event_day, 'counts' => array('content' => (int) $content->count, 'albums' => 0, 'essays' => 0));
             }
         }
     }
     if (!$params['limit_to'] || $params['limit_to'] === 'albums') {
         foreach ($a->get_iterated() as $album) {
             if ($params['scope'] === 'year') {
                 $key = "{$album->event_year}";
             } else {
                 if ($params['limit_to'] || $params['scope']) {
                     $key = "{$album->event_year}-{$album->event_month}";
                 } else {
                     $key = "{$album->event_year}-{$album->event_month}-{$album->event_day}";
                 }
             }
             $key = strtotime($key);
             if (is_numeric($album->event_year)) {
                 if (!isset($dates[$key])) {
                     $dates[$key] = array('year' => (int) $album->event_year, 'month' => (int) $album->event_month, 'day' => (int) $album->event_day, 'counts' => array('content' => 0, 'albums' => (int) $album->count, 'essays' => 0));
                 } else {
                     $dates[$key]['counts']['albums'] = (int) $album->count;
                 }
             }
         }
     }
     if (!$params['limit_to'] || $params['limit_to'] === 'essays') {
         foreach ($t->get_iterated() as $essay) {
             if ($params['scope'] === 'year') {
                 $key = "{$essay->event_year}";
             } else {
                 if ($params['limit_to'] || $params['scope']) {
                     $key = "{$essay->event_year}-{$essay->event_month}";
                 } else {
                     $key = "{$essay->event_year}-{$essay->event_month}-{$essay->event_day}";
                 }
             }
             $key = strtotime($key);
             if (is_numeric($essay->event_year)) {
                 if (!isset($dates[$key])) {
                     $dates[$key] = array('year' => (int) $essay->event_year, 'month' => (int) $essay->event_month, 'day' => (int) $essay->event_day, 'counts' => array('content' => 0, 'albums' => 0, 'essays' => (int) $essay->count));
                 } else {
                     $dates[$key]['counts']['essays'] = (int) $essay->count;
                 }
             }
//.........这里部分代码省略.........
开发者ID:Atomox,项目名称:benhelmerphotography,代码行数:101,代码来源:events.php


注:本文中的Content::select方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。