Avatar ·

Formatação de número com zeros à esquerda em PHP

Olá a todos! Sou novo em PHP e me deparei com o seguinte problema. Preciso exibir números de pedidos no formato "0001", "0012", "0123" e assim por diante. Ou seja, o número deve sempre ocupar 4 caracteres, e as casas faltantes devem ser preenchidas com zeros à esquerda. Tentei simplesmente concatenar strings, tipo: ```php $orderNumber = 1; echo "000" . $orderNumber; // exibe "0001" ``` Mas isso só funciona para números de 1 a 9. Se o número for 10, vai resultar em "00010", quando o correto seria "0010". Se for 100 — "000100" em vez de "0100". Enfim, uma bagunça completa. Sei que existe a função str_pad() em PHP, mas não entendo direito como aplicá-la corretamente para números. Tentei assim: ```php $num = 7; echo str_pad($num, 4, "0"); ``` Parece funcionar, mas não tenho certeza se é a melhor maneira. Talvez existam funções nativas específicas para formatação de números? Ou alguns detalhes que desconheço? Por exemplo, o que fazer se o número já tiver mais de 4 dígitos? Ou se for um número decimal? Por favor, me digam como proceder.