Nasıl matematik ile klasör başına dosyaların X miktarda alabilirim?

1 Cevap php

Ben aslında ben yaklaşık 2 yıl önce bu matematik denklemi yaptım ve sorun şimdi bunu anlamakta zorluk çekiyorum, yapmış.

Kullanıcıların siteme fotoğraf yüklediğinizde, ben klasör başına fotoğrafın yalnızca bir X miktarı ile bunları dengelemek, böylece temelde ben bunu kullanın.

Bu bana böyle bir şey verir, bu 1/1 1/2 1/3 1/4 ----1/10 böylece 2/1 2/2 2/3 ve ama ben her derin 3 klasörler gitmek için değiştirmeniz gerekir klasörü o yanındaki bu sayıyı artıracak sayı 1-9 veya 1-10 bir sınırı olmalı

Bu yüzden binlerce nesneleri tekrar gitmek zaman yeterince büyük bir sayı aşağıda benim fonksiyonu içine girdi ve bir sonuç 3/10 olduğunu ise nesnelerin doğru sayıda ulaşıldığında Yani o zaman 4/1 kadar yumru olur o zaman 4 atlayacaktır / 2. Ne yapmak isteyen am o 4/1/1 4/1/2 4 gideceğini 3/10/10 var bu 3 numaralar / seviyeleri derin 3/10/2 3/10/3 giderdim olun Üçüncü yerde 10 var / 1/3 o 4/2/1 için var olur

<?PHP
function uploadfolder($x) { 
  $dir = floor($x/18001) + 1;
  $sdir = ceil($x/2000) % 9;
  return "$dir/$sdir";
}
?>

Ben derin 2 seviyeleri ile bunu almak için 2 yıl önce çok zaman geçirdim ve ben sadece tür şanslı var ve şimdi bana bunun geri bakmak için biraz kafa karıştırıcı

1 Cevap

Kabaca bu yapmak gibi görünüyor:

Bu hattı kullanarak (0 .. 8) bir alt dizine 2000 resim paketi olacak

 $sdir = ceil($x/2000) % 9

Yazıldığından: kaç kere $ x içine 2000 uyum yapar. Eğer modülosunu 9 kullanarak 9 dizinlerinin bu sınırlamak gibi, yine alt dizinine 0 içine 18001rst fotoğraf almak istiyorum.

Üst düzey değişiklikler, bu nedenle sınır olarak 18.001 kullanıyor. 1. .. 18000 tüm fotoğraflar dizine 1. gidin. (+1 Sadece 1'den başlamak aralığını geçer. İşte hattı

$dir = floor($x/18001) + 1;

(PHP bilmiyorum, yalancı) Şimdi 3 düzeyleri için böyle bu konuda gidebiliriz:

function uploadfolder($x) {
  $numOfPics = 2000;
  $numOfFolders = 9;

  $topdir = ceil($x / ($numOfPics * $numOfFolders * $numOfFolders));
  $middir = floor($x / ($numOfPics * $numOfFolders)) % $numOfFolders + 1;
  $botdir = (floor($x / $numOfPics) % $numOfFolders) + 1;
  return "$topdir/$middir/$botdir";
}