fork(3) download
  1. <?php
  2.  
  3. function get_upload_dir($id) {
  4. $p = 3;
  5. for ($i = 2; $i >= 1; $i--) {
  6. $dir = ceil($id / pow($p, $i)) % $p;
  7. $dir_file_arr[] = $dir > 0 ? $dir : $p;
  8. }
  9. $dir_file_str = implode("/", $dir_file_arr);
  10. return $dir_file_str;
  11. }
  12.  
  13. for ($i=1; $i<=27; $i++) {
  14. echo $i . " - " . get_upload_dir($i) . "\n";
  15. }
  16.  
Success #stdin #stdout 0.01s 20520KB
stdin
Standard input is empty
stdout
1 - 1/1
2 - 1/1
3 - 1/1
4 - 1/2
5 - 1/2
6 - 1/2
7 - 1/3
8 - 1/3
9 - 1/3
10 - 2/1
11 - 2/1
12 - 2/1
13 - 2/2
14 - 2/2
15 - 2/2
16 - 2/3
17 - 2/3
18 - 2/3
19 - 3/1
20 - 3/1
21 - 3/1
22 - 3/2
23 - 3/2
24 - 3/2
25 - 3/3
26 - 3/3
27 - 3/3