本文整理汇总了PHP中Core\Helper\Utility\Validator::requireArray方法的典型用法代码示例。如果您正苦于以下问题:PHP Validator::requireArray方法的具体用法?PHP Validator::requireArray怎么用?PHP Validator::requireArray使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Core\Helper\Utility\Validator
的用法示例。
在下文中一共展示了Validator::requireArray方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: countOrderSettleArray
/**
*
* 取得一组记录的数目,用于分页
*
* @return int 查询条数
*
* @param array $condArray 查询条件数组,例如:
* array(
* array('supplier_id = ?', $supplier_id)
* array('is_on_sale = ?', 1)
* array('create_time > ? or create_time < ?', $timeMin, $timeMax)
* )
*
* @param int $ttl 缓存多少时间
*
*/
public function countOrderSettleArray(array $condArray, $ttl = 0)
{
// 参数验证
$validator = new Validator(array('condArray' => $condArray), '');
$condArray = $validator->requireArray(true)->validate('condArray');
$this->validate($validator);
return $this->_countArray('order_settle', $condArray, null, $ttl);
}
示例2: _countArray
/**
*
* 取得一组记录的数目,用于分页
*
* @return int 查询条数
*
* @param mixed $table 需要查询的数据表,可以是单个表,例如:'user',
* 也可以是多个表的数组,例如:array('user' ,'order_info' => 'oi')
*
* @param array $condArray 查询条件数组,例如:
* array(
* array('supplier_id = ?', $supplier_id)
* array('is_on_sale = ?', 1)
* array('supplier_price > ? or supplier_price < ?', $priceMin, $priceMax)
* )
* 这些查询条件最终会用 and 拼接起来
* @param array $optionArray 目前不支持 Having 查询,留待以后扩展
* @param int $ttl 缓存多少时间
*
*/
public function _countArray($table, array $condArray = null, array $optionArray = null, $ttl = 0)
{
// 构造参数验证数组
$validatorArray = array();
$validatorArray['table'] = $table;
$validatorArray['ttl'] = $ttl;
if (null != $condArray) {
$validatorArray['condArray'] = $condArray;
}
if (null != $optionArray) {
$validatorArray['optionArray'] = $optionArray;
}
// 参数验证
$validator = new Validator($validatorArray, '');
$table = $validator->required()->validate('table');
$ttl = $validator->digits()->min(0)->validate('ttl');
if (null != $condArray) {
$condArray = $validator->requireArray(false)->validate('condArray');
}
if (null != $optionArray) {
$optionArray = $validator->requireArray(false)->validate('optionArray');
}
$this->validate($validator);
// 构造查询条件
$filter = null;
if (!empty($condArray)) {
$filter = QueryBuilder::buildAndFilter($condArray);
}
// 创建 DataMapper
$dataMapper = new DataMapper($table);
if (is_string($table)) {
//简单的单表查询
$table = array($table);
}
if (is_array($table)) {
// 复杂的多表查询
return $dataMapper->selectCount($table, $filter, $optionArray, $ttl);
}
throw new \InvalidArgumentException('table should be string or array');
}
示例3: fetchOrderInfoOrderGoodsArray
/**
*
* 对 order_info , order_goods 做 inner_join 查询
*
* @param array $condArray
* @param int $offset
* @param int $limit
* @param int $ttl
*
* @return array
*/
public function fetchOrderInfoOrderGoodsArray(array $condArray, $offset = 0, $limit = 10, $ttl = 0)
{
// 参数验证
$validator = new Validator(array('condArray' => $condArray), '');
$condArray = $validator->requireArray(true)->validate('condArray');
$this->validate($validator);
$tableInnerJoinStr = DataMapper::tableName('order_goods') . ' as og INNER JOIN ' . DataMapper::tableName('order_info') . ' as oi ON og.order_id = oi.order_id';
return $this->_fetchArray($tableInnerJoinStr, 'og.*, oi.user_id, oi.pay_time, oi.add_time, oi.order_sn, ' . 'oi.consignee, oi.address, oi.mobile', $condArray, array('order' => 'og.order_id desc, og.rec_id desc'), $offset, $limit, $ttl);
}