Я работаю над плагином WordPress и пытаюсь сгенерировать уникальный «пин-код» при добавлении строки в таблицу.Булавка должна быть числовой строкой (8 символов, но это не важно).В таблице будут сохранены некоторые пользовательские данные и даты.
Но я борюсь с тем, чтобы перед вставкой строки у меня был уникальный пин-код.До сих пор я пытался использовать оператор if, но он будет работать только в том случае, если случайный пин-код сопоставлен один раз.
Я использую mt_rand для проверки «пин-кода», а затем проверяю DB, чтобы увидеть, если этот пин-кодсуществует (он должен быть уникальным).Я думаю, что мне нужно сделать цикл for, но я изо всех сил (только когда-либо использовал foreach lopps)
Пока у меня есть это, но я знаю, что это не правильно (это может работать, но я бы несколько вложенных ifs иэто будет ограничено количеством ifs на месте):
function pin_generator_create_pin(){
global $wpdb;
$pin = mt_rand(109076, 999999);
if(!$wpdb->get_var("SELECT * FROM ".PIN_GENERATOR_TABLE." WHERE pin=".$pin)){
return $pin;
}else{
$pin = mt_rand(109076, 999999);
if(!$wpdb->get_var("SELECT * FROM ".PIN_GENERATOR_TABLE." WHERE pin=".$pin)){
return $pin;
}
}
}//function
Кто-нибудь может увидеть, что я пытаюсь сделать?
Помогите, пожалуйста.