fork download
  1. <?php
  2. function format() {
  3. $args = func_get_args();
  4. if (empty($args)) {
  5. return null;
  6. }
  7.  
  8. if (count($args) === 1) {
  9. return $args[0];
  10. }
  11.  
  12. $str = array_shift($args);
  13. $str = preg_replace('#\{(\d+)\}#', '%$1\$s', $str);
  14.  
  15. return vsprintf($str, $args);
  16. }
  17.  
  18. Uso:
  19.  
  20. $str = 'Meu nome eh {1}.
  21. Sim, o meu nome eh {1}.
  22. Eu tenho {2} anos de idade.
  23. {1} {2} {2} {1}';
  24.  
  25. echo format($str, 'Wallace', 26);
Success #stdin #stdout 0.02s 52472KB
stdin
Standard input is empty
stdout
Meu nome eh Wallace.
            Sim, o meu nome eh Wallace.
            Eu tenho 26 anos de idade.
            Wallace 26 26 Wallace