mavzermete 1
mavzermete
Fethi Polat 1
Fethi Polat
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Scarlet 1
Scarlet
xranzei 1
xranzei
Hikaye Ekle

Altın Konu PHP Iterables

  • Konuyu başlatan Konuyu başlatan ITJA
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 9
  • Görüntüleme Görüntüleme 579
5.00 yıldız(lar) 1 Değerlendirme Değerlendirenler

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

PHP - Yinelenebilir nedir?

Yinelenebilir, bir döngü ile döngülenebilen herhangi bir değerdir foreach().

Sözde iterabletür PHP 7.1 'de tanıtıldı ve işlev argümanları ve işlev dönüş değerleri için bir veri türü olarak kullanılabilir.


PHP - Yinelenebilirleri Kullanma

Anahtar iterable sözcük, bir işlev bağımsız değişkeninin veri türü olarak veya bir işlevin dönüş türü olarak kullanılabilir:

Örnek

Yinelenebilir bir işlev argümanı kullanın:

PHP:
<?php
function printIterable(iterable $myIterable) {
  foreach($myIterable as $item) {
    echo $item;
  }
}

$arr = ["a", "b", "c"];
printIterable($arr);
?>

Örnek

Yinelenebilir bir dönüş yapın:

PHP:
<?php
function getIterable():iterable {
  return ["a", "b", "c"];
}

$myIterable = getIterable();
foreach($myIterable as $item) {
  echo $item;
}
?>

PHP - Yinelenebilirler Oluşturma​


Diziler

Tüm diziler yinelenebilirdir, bu nedenle herhangi bir dizi yinelenebilir gerektiren bir işlevin argümanı olarak kullanılabilir.

Yineleyiciler

Arabirimi uygulayan herhangi bir nesne, Iterator yinelenebilir bir işlev gerektiren bir işlevin argümanı olarak kullanılabilir.

Bir yineleyici, bir öğe listesi içerir ve bunlar arasında dolaşmak için yöntemler sağlar. Listedeki öğelerden birine bir işaretçi tutar. Listedeki her öğe, öğeyi bulmak için kullanılabilecek bir anahtara sahip olmalıdır.

Bir yineleyici şu yöntemlere sahip olmalıdır:


  • current() İşaretçinin şu anda işaret ettiği öğeyi döndürür. Herhangi bir veri türü olabilir
  • key() Listedeki geçerli öğeyle ilişkili anahtarı döndürür. Yalnızca bir tamsayı, kayan nokta, boole veya dize olabilir
  • next() İşaretçiyi listedeki bir sonraki öğeye taşır
  • rewind() İşaretçiyi listedeki ilk öğeye taşır
  • valid() Dahili işaretçi herhangi bir öğeye işaret etmiyorsa (örneğin, listenin sonunda next() çağrıldıysa), bu false döndürmelidir. Başka bir durumda true döndürür

Örnek

Yineleyici arabirimini uygulayın ve yinelenebilir olarak kullanın:

PHP:
<?php

class Turkmmo  implements Iterator {
  private $items = [];
  private $pointer = 0;

  public function __construct($items) {
   
    $this->items = array_values($items);
  }

  public function current() {
    return $this->items[$this->pointer];
  }

  public function key() {
    return $this->pointer;
  }

  public function next() {
    $this->pointer++;
  }

  public function rewind() {
    $this->pointer = 0;
  }

  public function valid() {
   
    return $this->pointer < count($this->items);
  }
}


function printIterable(iterable $myIterable) {
  foreach($myIterable as $item) {
    echo $item;
  }
}


$iterator = new MyIterator(["a", "b", "c"]);
printIterable($iterator);
?>
 

En Çok Reaksiyon Alan Mesajlar

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst