![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 22.06.2013 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Prosty skrypt, wprawdzie z kursu, ale też bym pewnie dał już radę. Zauważyłem jednak pewną nieścisłość. Funkcja range(1,49) losuje cyfry z przedziału między 1 a 49 bez powtórzeń (to fajna zaleta). Jednak jak tak sobie polosuję klika razy to okazuje się, iż co jakiś czas najniższą cyfrę jaką mi wylosuje to... to 0. Nawet jak zmieniłem zakres na range(2,49) także co jakiś czas najniższą cyfrę wylosuje mi 0. Hmmm... Czy coś nie tak jest ze skryptem? Czy może range jest inaczej zdefiniowane?
Pozdrawiam. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 125 Pomógł: 9 Dołączył: 25.05.2013 Ostrzeżenie: (0%) ![]() ![]() |
range nic nie losuje, tylko zwraca tablice z wszystkimi elementami pomiedzy danymi wartosciami
http://ie1.php.net/range -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 22.06.2013 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
range nic nie losuje, tylko zwraca tablice z wszystkimi elementami pomiedzy danymi wartosciami http://ie1.php.net/range No tak, zapędziłem się :-) Tak mają początkujący. Jednakże nie zmienia to faktu, iż nie powienien mi wyświetlać cyfry 0. Przecież nie ma jej wśród elementów. Pozdrawiam. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 273 Pomógł: 52 Dołączył: 3.02.2013 Skąd: Przemyśl Ostrzeżenie: (0%) ![]() ![]() |
Źródłem twojego problemu jest funkcja array_rand, a nie range
W dokumentacji możemy przeczytać: Cytat If you are picking only one entry, array_rand() returns the key for a random entry. Otherwise, it returns an array of keys for the random entries. Zaznaczyłem najważniejsze zdanie, które powinno Ci rozświetlić co się dzieje. Po prostu zwracana jest tablica KLUCZY, a nie wartości - z stąd twoje "0" Jeżeli chcemy tutaj użyć array_rand To możemy to zadanie wykonać na przykład w poniższy sposób:
Można także rozwiązać to zadanie za pomocą funkcji mt_rand Za pomocą odpowiedniej pętli i warunku uwzględniam to, że liczby nie mogą się powtarzać
Ten post edytował mstraczkowski 23.06.2013, 02:32:27 -------------------- Jeżeli moja wypowiedź Ci pomogła użyj przycisku
![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.06.2025 - 17:34 |