fungsi statik awam menjanaReceiptNumber(int $id) { $nombor_resit = sprintf('%06d', $id % 100000000); pulangkan $resit_nombor; }
Saya menggunakan kod di atas untuk menukar $id masuk kepada minimum 6 digit, maksimum 8 digit nombor. Contohnya: 000001 - 99999999
Tetapi terdapat kecacatan dalam kod ini Apabila $id bersamaan dengan 100000000, ia akan mengembalikan 000000. Bagaimanakah saya harus memperbaiki kod di atas untuk mengembalikan 000001?
Dengan analogi, $id ialah ID auto-increment bagi pangkalan data.
Sebab saya ingin mencapai ini adalah kerana saya mempunyai kotak teks paparan dengan had teks hanya 8 digit dan saya hanya boleh mengira nombor kembali dari 000001 dan terus mengulang.
Sila semak sama ada jawapan ini membantu
Bagaimana pula dengan ini: