fork(2) download
  1. <?php
  2.  
  3. function getDays($value)
  4. {
  5. $days = [
  6. 'понедельник',
  7. 'вторник',
  8. 'среда',
  9. 'четверг',
  10. 'пятница',
  11. 'суббота',
  12. 'воскресенье',
  13. ];
  14.  
  15. return implode(', ', array_map(function($day) use (&$days)
  16. {
  17. return $days[$day - 1];
  18. }, $value));
  19. }
  20.  
  21. function getDaysOrig($value)
  22. {
  23. $days = [
  24. 1=>'понедельник',
  25. 2=>'вторник',
  26. 3=>'среда',
  27. 4=>'четверг',
  28. 5=>'пятница',
  29. 6=>'суббота',
  30. 7=>'воскресенье',
  31. ];
  32.  
  33. foreach ($value as $day) {
  34. $result[] = $days[$day];
  35. }
  36.  
  37. return implode(', ',$result);
  38. }
  39.  
  40.  
  41. $t = microtime(true);
  42. for ($i = 0; $i < 90000; ++$i) {
  43. getDays([2, 5, 6]);
  44. }
  45. $t = microtime(true) - $t;
  46.  
  47. $tOrig = microtime(true);
  48. for ($i = 0; $i < 90000; ++$i) {
  49. getDaysOrig([2, 5, 6]);
  50. }
  51. $tOrig = microtime(true) - $tOrig;
  52.  
  53. echo "New: {$t}; Orig: {$tOrig}\n";
Success #stdin #stdout 1.07s 52432KB
stdin
Standard input is empty
stdout
New: 0.63994312286377; Orig: 0.40972805023193