プロジェクトで一意の ID を作成したいと考えています。私はこれを使用しました
$key = md5(microtime().rand());
しかし、次のような一意の ID を作成したい:HPSEMP001
など。HPSEMP002
HPSEMP003
私はこれを行うことができません私を助けてください私はPHPが初めてです
乱数を生成するための再帰関数を作成できます。これは、データベースで数値が使用可能かどうかにかかわらず、データベースでもチェックされます。
私の例では、以下のコードを使用して顧客用に異なるランダムな departmentCode を作成しました。
/**
* Generate Random number and check if it is exist or not
*/
public function checkAndGenerateRandomNumber($customerId) {
$number = sprintf("%04s", rand(1,9999));
$response = ClassRegistry::init('Department')->find('first', array('conditions' => array('Department.customer_id' => $customerId, 'Department.code' => $number)));
if(isset($response) && !empty($response)) {
$this->checkAndGenerateRandomNumber($customerId);
} else {
return $number;
}
}