Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

warning rand(): Invalid range: 1..100000 in

Konu, 'PHP' kısmında sokrates tarafından paylaşıldı.

  1. sokrates

    sokrates Daimi Üye

    Kayıt:
    8 Temmuz 2002
    Mesajlar:
    537
    Beğenilen Mesajlar:
    0
    Meslek:
    Web Programmer
    Şehir:
    istanbul
    merhaba
    aşağıda görüldügü gibi rand aralığında sayı elde etmeye çalıştığım zaman uyarı veriyor
    rand ın önüne @ koydugum zaman uyari vermiyor ama normal şekilde bu sayıyı nasıl elde ederim

    srand((double) microtime()*1000000);
    $sayi=rand(10000,100000);
    echo $sayi;
     
  2. mkarabulut

    mkarabulut Misafir

    Rakamları biraz küçük kullanmayı denedin mi ?
    Mesela 1000 ile 10000 arası gibi ...
     
  3. sokrates

    sokrates Daimi Üye

    Kayıt:
    8 Temmuz 2002
    Mesajlar:
    537
    Beğenilen Mesajlar:
    0
    Meslek:
    Web Programmer
    Şehir:
    istanbul
    denedim aralıkları 10000 erli verirsem çalışıyor ama 10000 ile 100000 arası olsun istiyorum ben
     
  4. mkarabulut

    mkarabulut Misafir

    Çıkan sonucu bir katsayı ile çarpmayı denedin mi ?
    $sayi=rand(1000,10000) * 10 ;

    Veya
    $sayi=rand(1000,10000) * rand (1,10);
    gibi...
     
  5. sokrates

    sokrates Daimi Üye

    Kayıt:
    8 Temmuz 2002
    Mesajlar:
    537
    Beğenilen Mesajlar:
    0
    Meslek:
    Web Programmer
    Şehir:
    istanbul
    ben bu srand a gıcık oldum
    microtime=0.83571800 1028627451 1028627451 şöyle bir sayı nasıl bir sayıysa arada bosluk var
    bunu sayının bosluktan sonraki kısmını double ile attık
    şöyle bir sayı kaldı 0.83571800 bunu 1000000 ile çarptık oda şöyle bir şey oldu
    0.83 sonra işin en garip tarafı bana göre rand zaten verdiğimiz aralıkta sayı üretiyor
    srand la nasıl bir ilişkisi var
    biraz bilgilendirirsen sevinirim
     
  6. Ansugo

    Ansugo Daimi Üye

    Kayıt:
    24 Temmuz 2002
    Mesajlar:
    6,090
    Beğenilen Mesajlar:
    0
    microtime i isin icine sokmanin anlami nedir ki? time() i sokalim srand'in icine?

    PHP:
    $rastgeleDegerBir 1000000000;
    $rastgeleDegerIki 2000000000;
    $rastgeleDegerUc  2147483647;//Max ?

    function rastgeleDegerAl () {
            global 
    $rastgeleDegerBir,$rastgeleDegerIki,$rastgeleDegerUc;

            
    srand(time());
            
    $rastal .= md5(rand(0,$rastgeleDegerBir));
            
    $rastal .= md5(rand(0,$rastgeleDegerIki));
            
    $rastal .= md5(rand(0,$rastgeleDegerUc));

            return 
    $rastal;
            exit;
        }
    Ben genelde boyle kullanirim.

    Kolay Gelsin...