Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Funkcja, Funkcja na podanie losowej liczby
gosciu99
post 14.05.2006, 16:27:43
Post #1





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 19.06.2004

Ostrzeżenie: (0%)
-----


Czy jest w php funkcja na podanie losowej liczby z przedziału np. powiedzmy od 1 do 23 questionmark.gif
Go to the top of the page
+Quote Post
Mike122
post 14.05.2006, 16:41:58
Post #2





Grupa: Zarejestrowani
Postów: 253
Pomógł: 1
Dołączył: 12.04.2006

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $rand = rand(1,23);
  3. print $rand;
  4. ?>


(1,23) tam ustawiasz zakres liczny

Ten post edytował Mike122 14.05.2006, 16:42:56


--------------------

Największy błąd ze wszystkich błędów to nie słuchać dobrych rad. Nikt nie jest doskonały i nie należy się obrażać za konstruktywną krytykę.
Go to the top of the page
+Quote Post
em1X
post 14.05.2006, 17:27:46
Post #3





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

Ostrzeżenie: (0%)
-----


bezpieczniej:

  1. <?php
  2.  
  3. mt_srand((double)(microtime() ^ posix_getpid()));
  4.  
  5. $num = mt_rand(1,23);
  6.  
  7. ?>


--------------------
eh, co polska wódka to polska wódka
Go to the top of the page
+Quote Post
gosciu99
post 15.05.2006, 20:06:16
Post #4





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 19.06.2004

Ostrzeżenie: (0%)
-----


Może mi ktoś wytłumaczyć dlaczego ta druga propozycja jest bezpieczniejsza?
Go to the top of the page
+Quote Post
erix
post 15.05.2006, 20:11:21
Post #5





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Bo korzysta z generatora liczb wister' target='_blank.

Mozesz podwyzszyc bezpieczenstwo dajac jako ziarno liczbe pierwsza.

Ten post edytował erix 15.05.2006, 20:12:05


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
mike
post 15.05.2006, 20:17:11
Post #6





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Przykład ~em1X jest ok. Poza jednym ale:
mt_rand()
Cytat
Notatka: Od php w wersji 4.2.0 nie ma potrzeby inicjalizować generatora liczb losowych funkcją srand() lub mt_srand(), ponieważ dzieje się to automatycznie.

Więc wystarczy:
  1. <?php
  2.  
  3. $num = mt_rand(1,23);
  4.  
  5. ?>
Go to the top of the page
+Quote Post
em1X
post 15.05.2006, 22:10:41
Post #7





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

Ostrzeżenie: (0%)
-----


mike_mech: tym bardziej moj przyklad jest bardziej bezpieczny: seed w moim przypadku ma bardziej losowy charakter i jest trudniejszy do przewidzenia.

Ten post edytował em1X 15.05.2006, 22:10:57


--------------------
eh, co polska wódka to polska wódka
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:37