模块

Model_Media
继承自 Model

媒体模型。

package
BootCMS
category
模型
author
Tinsh
copyright
© 2005-2016 Kilofox Studio

该类在 APPPATH/classes/model/media.php 第 13 行声明。

属性

protected $_db

private $_loaded

private $_values

方法

public create( ) (在 Model_Media 中定义)

创建媒体信息

返回值

  • mixed - 插入的数据ID 或 false

源代码

public function create($data)
{
	return $this->_db->insert('media', $data);
}

public delete( ) (在 Model_Media 中定义)

删除媒体信息

返回值

  • mixed - 执行结果

源代码

public function delete()
{
	if ($this->_values->id)
	{
		$where = "`id` = {$this->_values->id}";
		return $this->_db->delete('media', $where);
	}
	return false;
}

public static factory( ) (在 Model_Media 中定义)

创建并返回一个新的模型对象。

返回值

  • 对象

源代码

public static function factory($name)
{
	return parent::factory($name);
}

public findByGroup( [ integer $group = integer 0 ] ) (在 Model_Media 中定义)

根据ID取得媒体

参数

  • integer $group = integer 0 - 媒体分组

返回值

  • array - 数据

源代码

public function findByGroup($group = 0)
{
	$sql = "SELECT * FROM `" . $this->_db->tablePrefix . "media` WHERE `group` = $group";
	$result = $this->_db->selectArray($sql);
	return $result;
}

public findByIds( array $ids ) (在 Model_Media 中定义)

根据ID取得媒体

参数

  • array $ids required - 媒体ID

返回值

  • array - 数据

源代码

public function findByIds($ids)
{
	$result = array();
	if (is_array($ids) && count($ids))
	{
		$ids = implode(',', $ids);
		$sql = "SELECT * FROM `" . $this->_db->tablePrefix . "media` WHERE `id` IN ($ids)";
		$result = $this->_db->selectArray($sql);
	}
	return $result;
}

public findByPage( [ string $where = array(0) , string $orderBy = string(0) "" , integer $start = integer 0 , integer $limit = integer 10 ] ) (在 Model_Media 中定义)

按分页取得媒体

参数

  • string $where = array(0) - 查询条件
  • string $orderBy = string(0) "" - 排序方式
  • integer $start = integer 0 - 开始
  • integer $limit = integer 10 - 数量

返回值

  • array - 数据

源代码

public function findByPage($where = array(), $orderBy = '', $start = 0, $limit = 10)
{
	$orderBy = $orderBy ? 'm.' . $orderBy : 'm.id';
	$sql = "SELECT m.*, g.`group_name`, g.`slug` FROM `" . $this->_db->tablePrefix . "media` m LEFT JOIN `" . $this->_db->tablePrefix . "media_groups` g ON m.`group` = g.`id` WHERE m.`type` = 0 AND $where ORDER BY $orderBy LIMIT $start, $limit";
	$result = $this->_db->selectArray($sql);
	$sql = "SELECT COUNT(*) AS num FROM `" . $this->_db->tablePrefix . "media` WHERE `type` = 0 AND $where";
	$total = $this->_db->select($sql)->num;
	return array($result, $total);
}

public findByType( [ string $type = integer 0 ] ) (在 Model_Media 中定义)

根据类型取得媒体

参数

  • string $type = integer 0 - 媒体类型,0 为图片

返回值

  • array - 数据

源代码

public function findByType($type = 0)
{
	$sql = "SELECT * FROM `" . $this->_db->tablePrefix . "media` WHERE `type` = $type";
	$result = $this->_db->selectArray($sql);
	return $result;
}

public load( ) (在 Model_Media 中定义)

根据主键加载数据,并返回对象

返回值

  • 对象

源代码

public function load($id = 0)
{
	if (is_numeric($id) && $id > 0)
	{
		$sql = "SELECT * FROM `" . $this->_db->tablePrefix . "media` WHERE `id` = $id";
		$this->_values = $this->_db->select($sql);
		$this->_loaded = true;
	}
	return $this->_values;
}

public update( ) (在 Model_Media 中定义)

更新媒体信息

返回值

  • mixed - 执行结果

源代码

public function update()
{
	if ($this->_values->id)
	{
		$where = "`id` = {$this->_values->id}";
		return $this->_db->update('media', $this->_values, $where);
	}
	return false;
}

public __construct( ) (在 Model 中定义)

源代码

public function __construct()
{
	if (!is_object($this->_db))
	{
		$this->_db = Database::instance();
	}
}