PHP foreach sikli
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!
