Я хочу сделать идентификатор в базе данных
id_user => тип данных 'varchar'
Я хочу, чтобы мой идентификатор начинался с 00
, 01
, 02
и так далее. И чтобы создать новый id, я подсчитываю все строки, а результат из count будет добавлен 01.
Пример:
$id=array(00,01,02); $count_exist_id = $count($id) $new_id= '00' + $count_exist_id
и я надеюсь, что новый идентификатор должен быть '03'
и он будет хранить базу данных в столбце пользователя таблицы id_user
Вы можете использовать INT(x) ZEROFILL
, чтобы добавить 0 перед номером. '1' => '001'
С INT ZEROFILL у вас есть AUTO_INCREMENT
. 😉
CREATE TABLE user ( id_user INT(8) UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT, PRIMARY KEY(id_user) );
Если вы используете UNSIGNED
, вы оптимизируете свою таблицу, и вы сохраняете один BIT, чтобы получить большее количество.
Видеть :
Более простой подход состоял бы в том, чтобы вычислить следующий id как целое число, а затем поместить его в строку с двумя символами:
$id = array(00,01,02);- $count_exist_id = count($id); $new_id = str_pad($count_exist_id, 2, '0', STR_PAD_LEFT);