|
- <?php
- // +----------------------------------------------------------------------
- // | ThinkPHP [ WE CAN DO IT JUST THINK ]
- // +----------------------------------------------------------------------
- // | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved.
- // +----------------------------------------------------------------------
- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
- // +----------------------------------------------------------------------
- // | Author: zhangyajun <448901948@qq.com>
- // +----------------------------------------------------------------------
-
- namespace think\model;
-
- use think\Collection as BaseCollection;
- use think\Model;
-
- class Collection extends BaseCollection
- {
- /**
- * 延迟预载入关联查询
- * @access public
- * @param mixed $relation 关联
- * @return $this
- */
- public function load($relation)
- {
- $item = current($this->items);
- $item->eagerlyResultSet($this->items, $relation);
- return $this;
- }
-
- /**
- * 设置需要隐藏的输出属性
- * @access public
- * @param array $hidden 属性列表
- * @param bool $override 是否覆盖
- * @return $this
- */
- public function hidden($hidden = [], $override = false)
- {
- $this->each(function ($model) use ($hidden, $override) {
- /** @var Model $model */
- $model->hidden($hidden, $override);
- });
- return $this;
- }
-
- /**
- * 设置需要输出的属性
- * @param array $visible
- * @param bool $override 是否覆盖
- * @return $this
- */
- public function visible($visible = [], $override = false)
- {
- $this->each(function ($model) use ($visible, $override) {
- /** @var Model $model */
- $model->visible($visible, $override);
- });
- return $this;
- }
-
- /**
- * 设置需要追加的输出属性
- * @access public
- * @param array $append 属性列表
- * @param bool $override 是否覆盖
- * @return $this
- */
- public function append($append = [], $override = false)
- {
- $this->each(function ($model) use ($append, $override) {
- /** @var Model $model */
- $model && $model->append($append, $override);
- });
- return $this;
- }
-
- }
|