本文整理匯總了PHP中PDO::select方法的典型用法代碼示例。如果您正苦於以下問題:PHP PDO::select方法的具體用法?PHP PDO::select怎麽用?PHP PDO::select使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類PDO
的用法示例。
在下文中一共展示了PDO::select方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: getField
/**
* 獲取一條記錄的某個字段值
* @access public
* @param string $field 字段名
* @param string $spea 字段數據間隔符號 NULL返回數組
* @return mixed
*/
public function getField($field, $sepa = null)
{
$options['field'] = $field;
$options = $this->_parseOptions($options);
// 判斷查詢緩存
if (isset($options['cache'])) {
$cache = $options['cache'];
$key = is_string($cache['key']) ? $cache['key'] : md5($sepa . serialize($options));
$data = S($key, '', $cache);
if (false !== $data) {
return $data;
}
}
$field = trim($field);
if (strpos($field, ',') && false !== $sepa) {
// 多字段
if (!isset($options['limit'])) {
$options['limit'] = is_numeric($sepa) ? $sepa : '';
}
$resultSet = $this->db->select($options);
if (!empty($resultSet)) {
if (is_string($resultSet)) {
return $resultSet;
}
$_field = explode(',', $field);
$field = array_keys($resultSet[0]);
$key1 = array_shift($field);
$key2 = array_shift($field);
$cols = array();
$count = count($_field);
foreach ($resultSet as $result) {
$name = $result[$key1];
if (2 == $count) {
$cols[$name] = $result[$key2];
} else {
$cols[$name] = is_string($sepa) ? implode($sepa, array_slice($result, 1)) : $result;
}
}
if (isset($cache)) {
S($key, $cols, $cache);
}
return $cols;
}
} else {
// 查找一條記錄
// 返回數據個數
if (true !== $sepa) {
// 當sepa指定為true的時候 返回所有數據
$options['limit'] = is_numeric($sepa) ? $sepa : 1;
}
$result = $this->db->select($options);
if (!empty($result)) {
if (is_string($result)) {
return $result;
}
if (true !== $sepa && 1 == $options['limit']) {
$data = reset($result[0]);
if (isset($cache)) {
S($key, $data, $cache);
}
return $data;
}
foreach ($result as $val) {
$array[] = $val[$field];
}
if (isset($cache)) {
S($key, $array, $cache);
}
return $array;
}
}
return null;
}