Adding leading 0 in php

Viewed 21539

I have

  • tutorial 1 how to make this
  • tutorial 21 how to make this
  • tutorial 2 how to make this
  • tutorial 3 how to make this

and i need

  • tutorial 01 how to make this
  • tutorial 21 how to make this
  • tutorial 02 how to make this
  • tutorial 03 how to make this

so i can order them properly. (adding leading 0 when single digit is found)

What would be a php method to convert?

thanks in advance

note-please make sure that it identifies the single digit numbers only first and then add the leading zero

3 Answers

If your goal is to do natural ordering, the way a human being would, why not just use strnatcmp

$arr = [
    'tutorial 1 how to make this',
    'tutorial 21 how to make this',
    'tutorial 2 how to make this',
    'tutorial 3 how to make this',
];
usort($arr, "strnatcmp");
print_r($arr);

The above example will output:

Array
(
    [0] => tutorial 1 how to make this
    [1] => tutorial 2 how to make this
    [2] => tutorial 3 how to make this
    [3] => tutorial 21 how to make this
)
Related