本文整理匯總了PHP中think\Model::getPk方法的典型用法代碼示例。如果您正苦於以下問題:PHP Model::getPk方法的具體用法?PHP Model::getPk怎麽用?PHP Model::getPk使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類think\Model
的用法示例。
在下文中一共展示了Model::getPk方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: _list
/**
* +----------------------------------------------------------
* 根據表單生成查詢條件
* 進行列表過濾
* +----------------------------------------------------------
* @access protected
* +----------------------------------------------------------
* @param \Think\Model $model 數據對象
* @param array $map 過濾條件
* @param string $sortBy 排序
* @param boolean $asc 是否正序
* +----------------------------------------------------------
* @return void
+----------------------------------------------------------
* @throws \ThinkExecption
+----------------------------------------------------------
*/
protected function _list($model, $map, $sortBy = '', $asc = false, $countPk = 'id')
{
//排序字段 默認為主鍵名
if (!empty($_REQUEST['_order'])) {
$order = $_REQUEST['_order'];
} else {
$order = !empty($sortBy) ? $sortBy : $model->getPk();
}
//排序方式默認按照倒序排列
//接受 sost參數 0 表示倒序 非0都 表示正序
if (isset($_REQUEST['_sort'])) {
// $sort = $_REQUEST ['_sort'] ? 'asc' : 'desc';
$sort = $_REQUEST['_sort'] == 'asc' ? 'asc' : 'desc';
//zhanghuihua@msn.com
} else {
$sort = $asc ? 'asc' : 'desc';
}
//取得滿足條件的記錄數
$count = $model->where($map)->count($countPk);
if ($count > 0) {
import("@.ORG.Util.Page");
//創建分頁對象
if (!empty($_REQUEST['listRows'])) {
$listRows = $_REQUEST['listRows'];
} else {
$listRows = '';
}
$p = new Page($count, $listRows);
//分頁查詢數據
$voList = $model->where($map)->order("`" . $order . "` " . $sort)->limit($p->firstRow . ',' . $p->listRows)->select();
//echo $model->getlastsql();
//分頁跳轉的時候保證查詢條件
foreach ($map as $key => $val) {
if (!is_array($val)) {
$p->parameter .= "{$key}=" . urlencode($val) . "&";
}
}
//分頁顯示
$page = $p->show();
//列表排序顯示
$sortImg = $sort;
//排序圖標
$sortAlt = $sort == 'desc' ? '升序排列' : '倒序排列';
//排序提示
$sort = $sort == 'desc' ? 1 : 0;
//排序方式
//模板賦值顯示
$this->assign('list', $voList);
$this->assign('sort', $sort);
$this->assign('order', $order);
$this->assign('sortImg', $sortImg);
$this->assign('sortType', $sortAlt);
$this->assign("page", $page);
}
//zhanghuihua@msn.com
$this->assign('totalCount', $count);
$this->assign('numPerPage', $p->listRows);
$this->assign('currentPage', !empty($_REQUEST[C('VAR_PAGE')]) ? $_REQUEST[C('VAR_PAGE')] : 1);
cookie('_currentUrl_', __SELF__);
return;
}
示例2: getPk
public function getPk()
{
foreach ($this->listFields as $key => $field) {
if (!empty($field["pk"])) {
return empty($field["name"]) ? $key : $field["name"];
}
}
return parent::getPk();
}