- Katılım
- 2 Mar 2015
- Konular
- 59,185
- Mesajlar
- 88,376
- Online süresi
- 4ay 14g
- Reaksiyon Skoru
- 14,227
- Altın Konu
- 2,398
- Başarım Puanı
- 1,051
- TM Yaşı
- 11 Yıl 1 Ay 21 Gün
- MmoLira
- 694,336
- DevLira
- 234
Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!
PHP üç nokta sembolünü (...) spread operatörü olarak tanır . Spread operatörü bazen splat operatörü olarak da adlandırılır . Bu operatör ilk olarak PHP 7.4 sürümünde tanıtıldı. Dizileri açmak gibi birçok durumda etkili bir şekilde kullanılabilir.
Örnek 1
Aşağıdaki örnekte, $arr1'deki elemanlar, kendi elemanlarından oluşan bir listeden sonra $arr2'ye eklenir.
Kod:
<?php
$arr1 = [4,5];
$arr2 = [1,2,3, ...$arr1];
print_r($arr2);
?>
Aşağıdaki çıktıyı üretecektir:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
)
Örnek 2
Spread operatörü bir ifadede birden fazla kullanılabilir. Örneğin, aşağıdaki kodda, iki dizinin öğeleri genişletilerek üçüncü bir dizi oluşturulur.
Kod:
<?php
$arr1 = [1,2,3];
$arr2 = [4,5,6];
$arr3 = [...$arr1, ...$arr2];
print_r($arr3);
?>
Aşağıdaki çıktıyı üretecektir:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
)
Örnek 3
Aynı sonucun, aşağıda gösterildiği gibi array_merge() fonksiyonunun kullanımıyla da elde edilebileceğini unutmayın.
Kod:
<?php
$arr1 = [1,2,3];
$arr2 = [4,5,6];
$arr3 = array_merge($arr1, $arr2);
print_r($arr3);
?>
Aynı çıktıyı üretecektir:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
)
Ancak (...) operatörünün kullanımı, bir fonksiyon çağrısının getirdiği ek yükü ortadan kaldırdığı için çok daha verimlidir.
Örnek 4
PHP 8.1.0 ayrıca argümanları açtıktan sonra adlandırılmış argümanları kullanmaya izin veren başka bir özellik daha tanıttı. Her argümana ayrı ayrı bir değer sağlamak yerine, bir dizideki değerler, diziden önce ... (üç nokta) kullanılarak karşılık gelen argümanlara açılacaktır.
Kod:
<?php
function myfunction($x, $y, $z=30) {
echo "x = $x y = $y z = $z";
}
myfunction(...[10, 20], z:30);
?>
Aşağıdaki çıktıyı üretecektir:
x = 10 y = 20 z = 30
Örnek 5
Aşağıdaki örnekte, bir fonksiyonun dönüş değeri bir dizidir. Dizi elemanları daha sonra yayılır ve paketten çıkarılır.
Kod:
<?php
function get_squares() {
for ($i = 0; $i < 5; $i++) {
$arr[] = $i**2;
}
return $arr;
}
$squares = [...get_squares()];
print_r($squares);
?>
Aşağıdaki çıktıyı üretecektir:
Array
(
[0] => 0
[1] => 1
[2] => 4
[3] => 9
[4] => 16
)

