fork(1) download
  1. <?php
  2.  
  3. $latin = ['dž', 'lj', 'nj',
  4. 'a', 'b', 'c', 'č', 'ć',
  5. 'd', 'đ', 'e', 'f', 'g',
  6. 'h', 'i', 'j', 'k', 'l',
  7. 'm', 'n', 'o', 'p', 'r',
  8. 's', 'š', 't', 'u', 'v',
  9. 'z', 'ž',
  10. 'DŽ', 'LJ', 'NJ', 'Dž', 'Lj', 'Nj',
  11. 'A', 'B', 'C', 'Č', 'Ć',
  12. 'D', 'Đ', 'E', 'F', 'G',
  13. 'H', 'I', 'J', 'K', 'L',
  14. 'M', 'N', 'O', 'P', 'R',
  15. 'S', 'Š', 'T', 'U', 'V',
  16. 'Z', 'Ž'
  17. ];
  18.  
  19. $cyrillic = ['џ', 'љ', 'њ',
  20. 'a', 'б', 'ц', 'ч', 'ћ',
  21. 'д', 'ђ', 'e', 'ф', 'г',
  22. 'x', 'и', 'j', 'к', 'л',
  23. 'm', 'н', 'o', 'п', 'p',
  24. 'c', 'ш', 'т', 'y', 'b',
  25. 'з', 'ж',
  26. 'Џ', 'Љ', 'Њ', 'Џ', 'Љ', 'Њ',
  27. 'A', 'Б', 'Ц', 'Ч', 'Ћ',
  28. 'Д', 'Ђ', 'E', 'Ф', 'Г',
  29. 'X', 'И', 'J', 'K', 'Л',
  30. 'M', 'H', 'O', 'П', 'P',
  31. 'C', 'Ш', 'T', 'Y', 'B',
  32. 'З', 'Ж'
  33. ];
  34.  
  35. $arr = array_combine($latin, $cyrillic);
  36. $string = 'Today is {day_name} and time is {time}';
  37.  
  38. echo preg_replace_callback('/\{[^}]*}(*SKIP)(*F)|./', function ($m) use ($arr) {
  39. return array_key_exists($m[0], $arr) ? $arr[$m[0]] : $m[0];
  40. },
  41. $string);
Success #stdin #stdout 0.02s 52472KB
stdin
Standard input is empty
stdout
Toдay иc {day_name} aнд тиme иc {time}