请问这个PHP是独特的功能吗?

时间:2010-06-22 04:10:04

标签: php

我编程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;
        }
    }

1 个答案:

答案 0 :(得分:5)

如果这就是你需要做的全部(即总是查询olm_user表,type总是映射到列名),也许这就足够了:

<?php
function isUnique($string, $type) {
  $query = $this->db->select($type)
                    ->from('olm_user')
                    ->where($type, $string);
  return !$query->num_rows();
}