PHP foreach sikli


ULASHISH

Indekslangan massivlarda PHP foreach Loop

PHP foreach sikli - massivdagi har bir element yoki obyektdagi har bir xususiyat uchun kod bloki bo‘ylab aylanish.

Quyidagi misol indekslangan massivning barcha elementlarini aylanib chiqadi:

Misol

Indekslangan massivning elementlari bo‘ylab aylanish:

$colors = array("red", "green", "blue", "yellow");

foreach ($colors as $value) {
  echo "$value <br>";
}
O‘zingiz sinab ko‘ring »

Izoh: Har bir sikl iteratsiyasi uchun joriy massiv elementining qiymati $value o‘zgaruvchisiga tayinlanadi. Takrorlash massivning oxirgi elementiga yetguncha davom etadi.


PHP foreach Assotsiativ massivlarda sikl

Yuqoridagi massiv indekslangan massiv bo‘lib, birinchi elementda 0 kaliti, ikkinchisida 1 kaliti mavjud va hokazo.

Assotsiativ massivlar har xil, assotsiativ massivlar nomli kalitlardan foydalanadi va ular orqali aylanishda siz kalit nomi bilan birga qiymatni ham saqlab qolishingiz mumkin.

Bu foreach siklida kalit va qiymatni belgilash orqali amalga oshiriladi, masalan:

Misol

$members massividan kalit va qiymatni chop eting:

$members = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");

foreach ($members as $key => $value) {
  echo "$key : $value <br>";
}
O‘zingiz sinab ko‘ring »

Siz PHP massivlari bo‘limida massivlar haqida ko‘proq bilib olasiz.



PHP foreach obyektlar ustidagi sikl

foreach siklidan obyektning xossalari bo‘ylab aylanish uchun ham foydalanish mumkin:

Misol

$myCar obyektining xususiyat nomlari va qiymatlarini chop eting:

class Car {
  public $color;
  public $model;
  public function __construct($color, $model) {
    $this->color = $color;
    $this->model = $model;
  }
}

$myCar = new Car("red", "Volvo");

foreach ($myCar as $x => $y) {
  echo "$x: $y <br>";
}
O‘zingiz sinab ko‘ring »

obyektlar haqida ko‘proq ma’lumotni PHP obyektlari va classlari bo‘limida bilib olasiz.


PHP Break operatori

break iborasi bilan biz sikl oxiriga yetmagan bo‘lsa ham uni to‘xtatishimiz mumkin:

Misol

Agar $x "ko‘k" bo‘lsa, siklni to‘xtating:

$colors = array("red", "green", "blue", "yellow");

foreach ($colors as $x) {
  if ($x == "blue") break;
  echo "$x <br>";
}
O‘zingiz sinab ko‘ring »

PHP Davom etish operatori

continue operatori bilan biz mumkin joriy iteratsiyani o‘tkazib yuboring va keyingisini davom eting:

Misol

O‘tkazib yuboring va agar $x "ko‘k" bo‘lsa, keyingi iteratsiyaga o‘ting:

$colors = array("red", "green", "blue", "yellow");

foreach ($colors as $x) {
  if ($x == "blue") continue;
  echo "$x <br>";
}
O‘zingiz sinab ko‘ring »

PHP foreach sikli: havola orqali (byref)

Massiv elementlarini aylanib o‘tishda massiv elementiga qilingan har qanday o‘zgartirishlar, sukut bo‘yicha, asl massivga ta’sir qilmaydi:

Misol

Odatiy bo‘lib, massiv elementini o‘zgartirish asl massivga ta’sir qilmaydi:

$colors = array("red", "green", "blue", "yellow");

foreach ($colors as $x) {
  if ($x == "blue") $x = "pink";
}

var_dump($colors);
O‘zingiz sinab ko‘ring »

LEKIN, foreach deklaratsiyasida & belgisidan foydalanib, massiv elementi mos yozuvlar bo‘yicha tayinlanadi, buning natijasida massiv elementiga kiritilgan har qanday o‘zgarishlar asl massivga ham amalga oshiriladi:

Misol

Massiv elementlarini mos yozuvlar bo‘yicha belgilash orqali o‘zgarishlar asl massivga ta’sir qiladi:

$colors = array("red", "green", "blue", "yellow");

foreach ($colors as &$x) {
  if ($x == "blue") $x = "pink";
}

var_dump($colors);
O‘zingiz sinab ko‘ring »

Alternativ sintaksis

Foreach sikli sintaksisini endforeach operatori bilan ham shunday yozish mumkin

Misol

Indekslangan massivning elementlari bo‘ylab aylanish:

$colors = array("red", "green", "blue", "yellow");

foreach ($colors as $x) :
  echo "$x <br>";
endforeach;
O‘zingiz sinab ko‘ring »


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!