range
(PHP 4, PHP 5, PHP 7, PHP 8)
range — Створює масив, що містить діапазон елементів
Опис
range(string|int|float $start, string|int|float $end, int|float $step = 1): array
Створює масив, що містить діапазон елементів.
Если оба параметра —start
иend
— будут строками (string), а параметрstep
- Числом (int), то створений масив буде послідовністю байтів. В інших випадках створений масив буде послідовністю чисел.
Послідовність зростатиме, якщо значення параметра start
менше або дорівнює значенню параметра end
. В іншому випадку послідовність зменшуватиметься.
Список параметрів
start
Перше значення послідовності.
end
Остання значення послідовності.
step
Параметрstep
визначає, на скільки змінюватимуться значення у створюваній послідовності.
В параметрstep
можна передавати негативне значення, якщо потрібно створити спадну послідовність.
Если значение параметраstep
буде числом з плаваючою точкою (float) без дробової частини, воно буде інтерпретовано як ціле число (int).
Значення, що повертаються
Повертає послідовність елементів у вигляді масиву (array), в якому перший елемент набуває значення параметра start
, а последний — параметраend
, в якій кожне значення послідовності відстає від іншого на вказане у параметрі step
кількість кроків.
Останній елемент поверненого масиву дорівнюватиме або значення параметра end
, або попереднього значення послідовності, залежно від значення параметра step
Если оба параметра —start
иend
— будут строками (string), а параметрstep
- Числом (int), то створений масив буде послідовністю байтів, зазвичай латинських символів у кодуванні ASCII.
Якщо хоча б одне із значень параметрів start
end
, илиstep
буде числом із плаваючою точкою (float), створений масив буде послідовністю значень float.
Інакше створений масив буде послідовністю цілих чисел (int).
Помилки
- Если значение параметра
step
буде одно , буде викинуто виняток ValueError - Якщо значення хоча б одного з параметрів
start
end
, илиstep
виявиться неприпустимим кінцевим числом, як його визначає функціяis_finite(), буде викинуто виняток ValueError - Если значение параметра
step
будет отрицательным при создании возрастающей последовательности (т. е .$start <= $end
), буде викинуто виняток ValueError - Якщо значення хоча б одного з параметрів
start
илиend
буде порожнім рядком (''
), це призведе до помилки рівня**E_WARNING
**, а порожній рядок буде інтерпретований як ціле число - Якщо значення хоча б одного з параметрів
start
илиend
виявитьсянечисловим рядкомрозміром більше одного байта, буде згенеровано помилку рівня**E_WARNING
** - Якщо значення хоча б одного з параметрів
start
илиend
виявиться рядком, який неявно наводиться до цілого числа (int) через те, що інше значення — число, виникне помилка рівня**E_WARNING
** - Якщо значення хоча б одного з параметрів
step
буде числом з плаваючою точкою (float), а значення параметрівstart
иend
виявитьсянечисловим рядком, буде згенеровано помилку рівня**E_WARNING
**
список змін
Версия | Опис |
---|---|
8.3.0 | Якщо значення обох параметрів start иend - Виявляться рядками, то тепер функція range() завжди створюватиме масив (array) байтів. Раніше, якщо один із символів у рядку був числом, інші символи неявно приводилися до числа (int). |
8.3.0 | Тепер з'являється помилка рівня **E_WARNING **якщо значення хоча б одного з параметрів start илиend виявляється рядком, який неявно наводиться до цілого числа (int) через наявність у ній числових символів. |
8.3.0 | Тепер з'являється помилка рівня **E_WARNING **якщо значення хоча б одного з параметрів start илиend виявляється нечисловим рядком із розміром більше одного байта. |
8.3.0 | Тепер з'являється помилка рівня **E_WARNING **якщо значення хоча б одного з параметрів start илиend виявляється порожнім рядком. |
8.3.0 | Если значение параметраstep виявиться числом з плаваючою точкою (float) без дробової частини, воно буде інтерпретовано як ціле число (int). |
8.3.0 | Тепер викидається винятокValueError, якщо під час створення висхідної послідовності значення параметра step виявляється негативним числом. |
8.3.0 | Тепер викидається винятокValueError, если значение параметраstep не є допустимим кінцевим числом. |
8.3.0 | Тепер викидається винятокTypeErrorякщо значення хоча б одного з параметрів start илиend виявиться масивом (array), об'єктом (object) чи ресурсом (resource). Раніше вони неявно приводилися до цілої кількості (int). |
Приклади
Приклад #1 Приклади використання range()
Loading...
Результат виконання наведеного прикладу:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100
a, b, c, d, e, f, g, h, i
c, b, a
A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, [, \, ], ^, _, `, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z
Дивіться також
- shuffle() - перемішує масив
- array_fill() - Заповнює масив значеннями
- foreach