Méthode pour encapsuler les nombres dans une limite de 6 à 8 caractères
P粉315680565
P粉315680565 2023-08-10 10:36:59
0
2
524


fonction statique publique generateReceiptNumber(int $id) { $receipt_number = sprintf('%06d', $id % 100000000); renvoie $numéro_de_reçu ; } 

J'utilise le code ci-dessus pour convertir le $id entrant en un nombre minimum de 6 chiffres et maximum 8 chiffres. Par exemple : 000001 - 99999999

Mais il y a un défaut dans ce code. Lorsque $id est égal à 100000000, il renverra 000000. Comment dois-je améliorer le code ci-dessus pour renvoyer 000001 ?

Par analogie, $id est l'ID auto-incrémenté de la base de données.

La raison pour laquelle je souhaite y parvenir est que j'ai une zone de texte affichée avec une limite de texte de seulement 8 chiffres et je ne peux que compter les nombres à partir de 000001 et continuer à répéter.

P粉315680565
P粉315680565

répondre à tous (2)
P粉403804844



public static function generateReceiptNumber(int $id) { //处理特殊情况,当$id为100000000时if ($id === 100000000) { return '000001'; } //使用取模运算将ID限制在范围0到99,999,99$limited_id = $id % 100000000; //格式化限制的ID,使用前导零确保至少6位$receipt_number = sprintf('%06d', $limited_id); return $receipt_number; }


Veuillez vérifier si cette réponse vous aide

    P粉863295057

    Que pensez-vous de ceci :

    function generateReceiptNumber(int $id) { while($id>=100000000) $id -= 100000000 - 1; return sprintf('%06d', $id); }
      Derniers téléchargements
      Plus>
      effets Web
      Code source du site Web
      Matériel du site Web
      Modèle frontal
      À propos de nous Clause de non-responsabilité Sitemap
      Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!