我已经有一段时间编程PHP所以我非常生疏,所以我只想仔细检查我的工作.使用以下代码作为检查字符串是否对数据库唯一的方法?
function isUnique($string, $type) {
switch ($type) {
case 'username':
$query = $this->db->select('username')
->from('olm_user')
->where('username', $string);
if (!$query->num_rows()) {
return false; // returns false if not taken?
}
break;
case 'email':
$query = $this->db->select('email')
->from('olm_user')
->where('email', $string);
if (!$query->num_rows()) {
return false; // returns false if not taken?
}
break;
case 'olname':
$query = $this->db->select('olname')
->from('olm_user')
->where('olname', $string);
if (!$query->num_rows()) {
return false; // returns false if not taken?
}
break;
}
}
Run Code Online (Sandbox Code Playgroud)
如果这就是你需要做的全部(即总是查询olm_user表,并type始终映射到列名),也许这就足够了:
<?php
function isUnique($string, $type) {
$query = $this->db->select($type)
->from('olm_user')
->where($type, $string);
return !$query->num_rows();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
107 次 |
| 最近记录: |