ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

ฟังก์ชัน iterator_count()

ใน php มีฟังก์ชันที่สามารถนับจำนวนสิ่งที่อยู่ใน loop หรือนับองค์ประกอบของ loop มากมาย แต่สำหรับบทความนี้จะแนะนำอีกวิธีหนึ่ง ซึ่งเป็นฟังชั่นที่น่าสนใจไม่น้อย
 ฟังก์ชัน iterator_count() จะทำหน้าที่สำหรับนับองค์ประกอบในตัว วนซ้ำ หรือว่า  Loop ฟังก์ชันสามารถคืนค่าเป้น int หรือจำนวนขององค์ประกอบที่นับได้
หลายๆคนอาจจะไม่คุ้นเคยฟังก์ชั่นนี้ แต่เราสามารถทดลองนำไปปรับใช้กันได้น่ะครับ 

รูปแบบ syntex

iterator_count ( Traversable $iterator ) : int

แต่ทั้งนี้ในการนับองค์ประกอบในตัววนซ้ำ iterator_count () iterator จะไม่รับประกันว่าจะรักษาตำแหน่งปัจจุบันของ iterator

 

iterator  คือ ตัววนซ้ำถูกนับ

การคืนค่า

ฟังก์นี้จะคืนค่าจำนวนขององค์ประกอบใน iterator 

ตัวอย่างโค้ด

<?php
$iterator = new ArrayIterator(array('recipe'=>'pancakes', 'egg', 'milk', 'flour'));
var_dump(iterator_count($iterator));
?>

ผลลัพธ์ที่ได้

int(4)

จะเห็นว่ามีองค์ประกอบทั้งหมด 4 องค์ประกอบ

 

ตัวอย่างต่อไป

<?php
$iterator = new ArrayIterator(['one', 'two', 'three']);
var_dump($iterator->current());
var_dump(iterator_count($iterator));
var_dump($iterator->current());
?>

ผลลัพธ์ที่ได้

string(3) "one"
int(3)
NULL

 

ตัวอย่างสุดท้าย

<?php
$iterator = new ArrayIterator(['one', 'two', 'three']);
foreach ($iterator as $key => $value) {
    echo "$key: $value (", iterator_count($iterator), ")\n";
}?>

ผลลัพธ์ที่ได้

0: one (3)

จะเห็นว่าเราสามารถนำมาประยุกต์ได้หลากลายรูปแบบน่ะครับ ไม่ว่าจะเอาไว้นับองค์ประกอบหรือตรวจสอบก็ตามน่ะครับ  แต่ทั้งนี้เราทำความเข้าใจของการใช้งาน Loop,การใช้อาร์เรย์ , foreachและ ฟังก์ชั่น var_dump()  หวังว่าบทความนี้จะเป็นประโยชน์และสามารถนำไปต่อยอดกันได้น่ะครับ

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : ฟังก์ชัน PHP