本文整理汇总了PHP中Articles::whereIn方法的典型用法代码示例。如果您正苦于以下问题:PHP Articles::whereIn方法的具体用法?PHP Articles::whereIn怎么用?PHP Articles::whereIn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Articles
的用法示例。
在下文中一共展示了Articles::whereIn方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: articleListData
/**
*
* @param type $c_id
* @param type $is_star
* @param type $per_page
* @param type $search_word ===搜索关键字===
* @return type
*/
public function articleListData($c_id = 0, $is_star = 0, $per_page = 15, $search_word = '')
{
$cus_id = Auth::id();
if (!empty($search_word)) {
if ($c_id) {
$cus_data = new PrintController();
$c_ids = explode(',', $cus_data->getChirldenCid($c_id));
if ($is_star) {
$article_list = Articles::whereIn('c_id', $c_ids)->where('title', 'like', '%' . $search_word . '%')->where('is_star', '=', $is_star)->orderBy('is_top', 'DESC')->orderBy('sort', 'ASC')->orderBy('created_at', 'DESC')->paginate($per_page);
} else {
$article_list = Articles::whereIn('c_id', $c_ids)->where('title', 'like', '%' . $search_word . '%')->orderBy('is_top', 'DESC')->orderBy('sort', 'ASC')->orderBy('created_at', 'DESC')->paginate($per_page);
}
} else {
if ($is_star) {
$article_list = Articles::where('cus_id', '=', $cus_id)->where('title', 'like', '%' . $search_word . '%')->where('is_star', '=', $is_star)->orderBy('is_top', 'DESC')->orderBy('sort', 'ASC')->orderBy('created_at', 'DESC')->paginate($per_page);
} else {
$article_list = Articles::where('cus_id', '=', $cus_id)->where('title', 'like', '%' . $search_word . '%')->orderBy('is_top', 'DESC')->orderBy('sort', 'ASC')->orderBy('created_at', 'DESC')->paginate($per_page);
}
}
} else {
if ($c_id) {
$cus_data = new PrintController();
$c_ids = explode(',', $cus_data->getChirldenCid($c_id));
if ($is_star) {
$article_list = Articles::whereIn('c_id', $c_ids)->where('is_star', '=', $is_star)->orderBy('is_top', 'DESC')->orderBy('sort', 'ASC')->orderBy('created_at', 'DESC')->paginate($per_page);
} else {
$article_list = Articles::whereIn('c_id', $c_ids)->orderBy('is_top', 'DESC')->orderBy('sort', 'ASC')->orderBy('created_at', 'DESC')->paginate($per_page);
}
} else {
if ($is_star) {
$article_list = Articles::where('cus_id', '=', $cus_id)->where('is_star', '=', $is_star)->orderBy('is_top', 'DESC')->orderBy('sort', 'ASC')->orderBy('created_at', 'DESC')->paginate($per_page);
} else {
$article_list = Articles::where('cus_id', '=', $cus_id)->orderBy('is_top', 'DESC')->orderBy('sort', 'ASC')->orderBy('created_at', 'DESC')->paginate($per_page);
}
}
}
$article_arr = $article_list->toArray();
if (count($article_arr['data'])) {
foreach ($article_arr['data'] as $k => $v) {
$moring = [];
$article_arr['data'][$k]['c_name'] = Classify::where('id', $v['c_id'])->pluck('name');
$moring = Moreimg::where('a_id', $v['id'])->orderBy('sort')->lists('img');
array_unshift($moring, $v['img']);
$article_arr['data'][$k]['img'] = $moring;
unset($moring);
}
return $article_arr;
}
}
示例2: toTree
/**
* 根据从数据库查询的栏目数据数组,转为树形结构的数组
*
* @param array $arr 栏目数据数组
* @param int $pid 起始栏目id
* @param bool $isNav 是否是顶级导航(顶级导航会显示下面的几篇文章)
* @return array 树形结构的数组
*/
private function toTree($arr, $pid = 0, $isNav = FALSE)
{
$tree = array();
foreach ((array) $arr as $k => $v) {
if ($v['p_id'] == $pid) {
$v['image'] = $v['img'] ? $this->source_dir . 'l/category/' . $v['img'] : '';
$v['icon'] = '<i class="iconfont">' . $v['icon'] . '</i>';
unset($v['img']);
$tree[] = $v;
}
}
if (empty($tree)) {
return null;
}
foreach ((array) $tree as $k => $v) {
$data = [];
if ($v['type'] != 6) {
if (empty($v['view_name'])) {
$tree[$k]['link'] = $this->showtype == 'preview' ? $this->domain . '/category/' . $v['id'] : $this->domain . '/category/' . $v['id'] . '.html';
} else {
$tree[$k]['link'] = $this->showtype == 'preview' ? $this->domain . '/category/v/' . $v['view_name'] : $this->domain . '/category/v/' . $v['view_name'] . '.html';
}
if ($isNav == TRUE) {
$cids = explode(',', $this->getChirldenCid($v['id'], 1));
//取得所有栏目id
if ($this->type == 'mobile') {
$articles = Articles::whereIn('c_id', $cids)->where('mobile_show', '1')->where('cus_id', $this->cus_id)->select('id', 'c_id', 'title', 'img', 'introduction', 'created_at')->take(20)->get();
} else {
$articles = Articles::whereIn('c_id', $cids)->where('pc_show', '1')->where('cus_id', $this->cus_id)->select('id', 'c_id', 'title', 'img', 'introduction', 'created_at')->take(20)->get();
}
if (!empty($articles)) {
$abc = [];
foreach ((array) $articles as $key => $d) {
$data[$key]['title'] = $d->title;
$classify = Classify::where('id', $d->c_id)->first();
if (empty($classify->view_name)) {
$data[$key]['category']['link'] = $this->showtype == 'preview' ? $this->domain . '/category/' . $d->c_id : $this->domain . '/category/' . $d->c_id . '.html';
} else {
$data[$key]['category']['link'] = $this->showtype == 'preview' ? $this->domain . '/category/v/' . $classify->view_name : $this->domain . '/category/v/' . $classify->view_name . '.html';
}
$data[$key]['image'] = $d->img ? $this->source_dir . 's/articles/' . $d->img : '';
$data[$key]['link'] = $this->showtype == 'preview' ? $this->domain . '/detail/' . $d->id : $this->domain . '/detail/' . $d->id . '.html';
$data[$key]['category']['name'] = $classify->name;
$data[$key]['category']['en_name'] = $classify->en_name;
$data[$key]['category']['icon'] = '<i class="iconfont">' . $classify->icon . '</i>';
$data[$key]['description'] = $d->introduction;
$data[$key]['pubdate'] = (string) $d->created_at;
$data[$key]['pubtimestamp'] = strtotime($d->created_at);
unset($v['value']);
}
$tree[$k]['data'] = $data;
} else {
$tree[$k]['data'] = [];
}
}
} else {
if ($v['open_page'] == 1) {
$tree[$k]['link'] = strpos($v['url'], 'http') === false ? 'http://' . $v['url'] : $v['url'];
} else {
$tree[$k]['link'] = strpos($v['url'], 'http') === false ? 'http://' . $v['url'] . '"target="_blank' : $v['url'] . '"target="_blank';
}
}
$tree[$k]['current'] = 0;
$tree[$k]['selected'] = 0;
$tree[$k]['childmenu'] = $this->toTree($arr, $v['id']);
}
return $tree;
}
示例3: htmlPagecount
/**
* 计算生成html文件的数量
*
* @param array $pc_classify_ids pc栏目id
* @param array $mobile_classify_ids 手机栏目id
* @param array $pc_article_ids pc文章id
* @param array $mobile_article_ids 手机文章id
* @return int
*/
private function htmlPagecount($pc_classify_ids = [], $mobile_classify_ids = [], $pc_article_ids = [], $mobile_article_ids = [])
{
$template = new PrintController();
$page_count = 2;
$pc_per_page = CustomerInfo::where('cus_id', $this->cus_id)->pluck('pc_page_count');
foreach ($pc_classify_ids as $id) {
$c_ids = explode(',', $template->getChirldenCid($id));
$total = Articles::whereIn('c_id', $c_ids)->where('cus_id', $this->cus_id)->where('pc_show', '1')->count();
if ($total) {
$page_count += ceil($total / $pc_per_page);
} else {
$page_count++;
}
}
$mobileper_page = CustomerInfo::where('cus_id', $this->cus_id)->pluck('mobile_page_count');
foreach ($pc_classify_ids as $id) {
$c_ids = explode(',', $template->getChirldenCid($id));
$total = Articles::whereIn('c_id', $c_ids)->where('cus_id', $this->cus_id)->where('mobile_show', '1')->count();
if ($total) {
$page_count += ceil($total / $mobileper_page);
} else {
$page_count++;
}
}
$page_count += count($pc_article_ids);
$page_count += count($mobile_article_ids);
return $page_count;
}
示例4: htmlPagecount
/**
* 计算生成html文件的数量
*
* @param array $pc_classify_ids pc栏目id
* @param array $mobile_classify_ids 手机栏目id
* @param array $pc_article_ids pc文章id
* @param array $mobile_article_ids 手机文章id
* @return int
*/
private function htmlPagecount($pc_classify_ids = [], $mobile_classify_ids = [], $pc_article_ids = [], $mobile_article_ids = [])
{
$template = new PrintController();
$page_count = 2;
$pc_per_page = CustomerInfo::where('cus_id', $this->cus_id)->pluck('pc_page_count');
foreach ((array) $pc_classify_ids as $id) {
$c_ids = explode(',', ltrim($template->getChirldenCid($id, 1)));
$a_c_type = Classify::where('id', $id)->pluck('type');
//取得栏目的type
$pc_page_count_switch = CustomerInfo::where('cus_id', $this->cus_id)->pluck('pc_page_count_switch');
//页面图文列表图文显示个数是否分开控制开关
if (isset($pc_page_count_switch) && $pc_page_count_switch == 1 && $a_c_type <= 3) {
if ($a_c_type == 1) {
$page_number = CustomerInfo::where('cus_id', $this->cus_id)->pluck('pc_page_txt_count');
//每页文字显示个数
$total = Articles::whereIn('c_id', $c_ids)->where('cus_id', $this->cus_id)->where('pc_show', '1')->count();
if ($total) {
$page_count += ceil($total / $page_number) + 1;
} else {
$page_count += 2;
}
}
if ($a_c_type == 3) {
$page_number = CustomerInfo::where('cus_id', $this->cus_id)->pluck('pc_page_imgtxt_count');
//每页图文显示个数
$total = Articles::whereIn('c_id', $c_ids)->where('cus_id', $this->cus_id)->where('pc_show', '1')->count();
if ($total) {
$page_count += ceil($total / $page_number) + 1;
} else {
$page_count += 2;
}
}
if ($a_c_type == 2) {
$page_number = CustomerInfo::where('cus_id', $this->cus_id)->pluck('pc_page_img_count');
//每页图片显示个数
$total = Articles::whereIn('c_id', $c_ids)->where('cus_id', $this->cus_id)->where('pc_show', '1')->count();
if ($total) {
$page_count += ceil($total / $page_number) + 1;
} else {
$page_count += 2;
}
}
} else {
$total = Articles::whereIn('c_id', $c_ids)->where('cus_id', $this->cus_id)->where('pc_show', '1')->count();
if ($total) {
$page_count += ceil($total / $pc_per_page) + 1;
} else {
$page_count += 2;
}
}
}
$mobileper_page = CustomerInfo::where('cus_id', $this->cus_id)->pluck('mobile_page_count');
if (!empty($mobile_classify_ids)) {
foreach ((array) $mobile_classify_ids as $id) {
$c_ids = explode(',', $template->getChirldenCid($id, 1));
$total = Articles::whereIn('c_id', $c_ids)->where('cus_id', $this->cus_id)->where('mobile_show', '1')->count();
if ($total) {
$page_count += ceil($total / $mobileper_page);
} else {
$page_count++;
}
}
}
$page_count += count($pc_article_ids);
$page_count += count($mobile_article_ids);
return $page_count;
}