It's hard to do in one regexp (though maybe possible).
Here's way to do in two:
preg_match('/^[a-z]+\\d[a-z\\d]*$/', $string);
// begins with a letter, contains a digit,
// consists of letters and digits, is lowercase
preg_match('/^[a-z\\d]{6,12}$/', $string);
// checks for length. But you'd better just take strlen($string)
//and compare it to 6 and 12:
strlen($string) < 13;
strlen($string) > 5;
[edit] Oh. i'm late 🙂