(PHP 4, PHP 5, PHP 7, PHP 8)
range — Belli bir eleman aralığını içeren bir dizi oluşturur
Aralığı belirtilen elemanları içeren bir dizi oluşturur.
başlangıç
ve bitiş
birer
string ve adım
bir int
değer ise üretilen dizi baytlardan oluşur. Aksi takdirde sayılardan oluşur.
başlangıç
küçük veya eşit
bitiş
ise dizi artan sıradadır.
Aksi takdirde azalan sıradadır.
Değerleri arasında adım
fark olan
başlangıç
ve bitiş
dahil
ikisi arasındaki elemanlardan oluşan bir dizi döner.
Döndürülen dizinin son elemanı, adım
değerine bağlı
olarak bitiş
veya dizinin bir önceki elemanıdır.
başlangıç
ve bitiş
birer
string ve adım
bir int
değer ise üretilen dizi baytlardan oluşur. Bunlar genel olarak
ASCII karakterlerdir.
başlangıç
, bitiş
,
ve adım
değerlerinden en az birinin
float olması durumunda dizi float değerler içerir.
Aksi takdirde, dizi int değerler içerir.
adım
0
ise,
ValueError oluşur.
başlangıç
, bitiş
,
veya adım
is_finite() değilse,
ValueError oluşur.
adım
negatif ise ancak üretilen dizi artansa,
(örn, $başlangıç <= $bitiş
),
ValueError oluşur.
başlangıç
veya bitiş
boş dige ''
ise, bir E_WARNING
yayımlanır ve boş dizge 0
olarak yorumlanır.
başlangıç
veya bitiş
birden fazla baytı olan
sayısal olmayan
bir dizge ise bir E_WARNING
yayımlanır.
başlangıç
veya bitiş
diğer
sınır değeri bir sayı olduğundan dolaylı olarak int türüne
dönüştürülen bir dizge ise bir E_WARNING
yayımlanır.
adım
float türünde ve
başlangıç
ve bitiş
sayısal olmayan
bir dizge ise bir E_WARNING
yayımlanır.
Sürüm: | Açıklama |
---|---|
8.3.0 |
başlangıç ve bitiş ikisi
de dizge ise range() işlevi artık daima bayt dizisi
üretiyor. Evvelce bunlaran biri sayısal bir dizge ise diğeri örtük
olarak int türüne dönüştürülürdü.
|
8.3.0 |
başlangıç veya bitiş
değerlerinin birinin bir sayı olmasından dolayı dizge olanının örtük
olarak int türüne dönüştürülmesi artık bir
E_WARNING yayınlamasına sebep oluyor.
|
8.3.0 |
başlangıç veya bitiş
birden fazla bayt içeren sayısal olmayan bir dizge ise artık bir
E_WARNING yayınlanıyor.
|
8.3.0 |
başlangıç veya bitiş
boş dizge ise artık bir E_WARNING yayınlanıyor.
|
8.3.0 |
adım ondalık kısmı olmayan bir float
değer içeriyorsa artık bir int olarak yorumlanıyor.
|
8.3.0 |
Artan dizi üretilirken adım negatifse artık
ValueError oluşuyor.
range.
|
8.3.0 |
adım sonlu değilse artık
ValueError oluşuyor.
|
8.3.0 |
başlangıç veya bitiş
değeri array, object veya
resource türündeyse artık TypeError
oluşuyor. Evvelce örtük olarak int değere dönüştürülürdü.
|
Örnek 1 - range() örnekleri
<?php
echo implode(', ', range(0, 12)), PHP_EOL;
echo implode(', ', range(0, 100, 10)), PHP_EOL;
echo implode(', ', range('a', 'i')), PHP_EOL;
echo implode(', ', range('c', 'a')), PHP_EOL;
?>
Yukarıdaki örneğin çıktısı:
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