指定した数字列が正しい桁数の数字かどうかを判定したい時、 以下のように書くことができます。
/**4桁の数字**/ $key_box = 0000; preg_match('/^([0-9]{4})$/', $key_box); //true /**6桁の数字**/ $key_box = 0000; preg_match('/^([0-9]{6})$/', $key_box); //false /**4以上8桁以下の数字**/ $key_box = 0000; preg_match('/^([0-9]{4,8})$/', $key_box); //true /**6以上8桁以下の数字**/ $key_box = 0000; preg_match('/^([0-9]{6,8})$/', $key_box); //true