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

ฟังก์ชัน 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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
สิ่งที่เกิดขึ้นของ pgAdmin 4 v4.22
โดย bolue พ 10 มิ.ย. 2020 10:01 am บอร์ด Python Knowledge
0
69
พ 10 มิ.ย. 2020 10:01 am โดย bolue
netbeans เชื่อมกับ gitlab ไม่ได้
โดย bolue อ 09 มิ.ย. 2020 6:36 pm บอร์ด Programming - C/C++ & java & Python
1
109
พ 10 มิ.ย. 2020 10:04 am โดย bolue
การเก็บรักษาเอกสารทางบัญชี
โดย natthanit.r2538 อ 09 มิ.ย. 2020 6:32 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
69
อ 09 มิ.ย. 2020 6:32 pm โดย natthanit.r2538
เอกสารที่ใช้ประกอบในการลงบัญชี
โดย natthanit.r2538 อ 09 มิ.ย. 2020 4:48 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
1
61
อ 07 ก.ค. 2020 11:12 am โดย thatsawan
วิธีการ ลบตารางออกจากฐานข้อมูล Postgres ด้วย Module psycopg2
โดย bolue อ 09 มิ.ย. 2020 3:44 pm บอร์ด Python Knowledge
0
55
อ 09 มิ.ย. 2020 3:44 pm โดย bolue
วิธีการ สร้างตารางข้อมูลในฐานข้อมูล Postgres ด้วย Module psycopg2
โดย bolue อ 09 มิ.ย. 2020 3:21 pm บอร์ด Python Knowledge
0
121
อ 09 มิ.ย. 2020 3:21 pm โดย bolue
สอบถาม ผมจะทำ wedhook Messenger ของ fackbook ทำตามวิธี ของ Getting Started แล้วไม่ได้ครับ
โดย jirawoot อ 09 มิ.ย. 2020 2:39 pm บอร์ด Programming - C/C++ & java & Python
0
96
อ 09 มิ.ย. 2020 2:39 pm โดย jirawoot
วิธีการ ลบข้อมูลออกจากฐานข้อมูล Postgres ด้วย Module psycopg2
โดย bolue อ 09 มิ.ย. 2020 1:49 pm บอร์ด Python Knowledge
0
63
อ 09 มิ.ย. 2020 1:49 pm โดย bolue
วิธีการ แก้ไขข้อมูลในฐานข้อมูล Postgres ด้วย Module psycopg2
โดย bolue อ 09 มิ.ย. 2020 1:39 pm บอร์ด Python Knowledge
0
88
อ 09 มิ.ย. 2020 1:39 pm โดย bolue
วิธีการ เพิ่มข้อมูลลงฐานข้อมูล Postgres ด้วย Module psycopg2
โดย bolue อ 09 มิ.ย. 2020 1:30 pm บอร์ด Python Knowledge
0
64
อ 09 มิ.ย. 2020 1:30 pm โดย bolue
ngrok คืออะไร - ทำ Localhost เครื่องของผู้พัฒนาอยู่ในเครื่องสามารถ online บน internet ได้
โดย jirawoot อ 09 มิ.ย. 2020 11:37 am บอร์ด Python Knowledge
0
119
อ 09 มิ.ย. 2020 11:37 am โดย jirawoot
การบัญชีต้นทุน กับการบัญชีบัญชีบริหารเกี่ยวข้องกันอย่างไร
โดย natthanit.r2538 จ 08 มิ.ย. 2020 4:50 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
60
จ 08 มิ.ย. 2020 4:50 pm โดย natthanit.r2538
หนังสือรับรองหักภาษี ณ ที่จ่าย มีความสำคัญอย่างไร
โดย natthanit.r2538 จ 08 มิ.ย. 2020 3:13 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
65
จ 08 มิ.ย. 2020 3:13 pm โดย natthanit.r2538
วิธีการ ทำตาราง ด้วย bootstrap เพื่อความสวยงาม ทำตารางย่อตามหน้าจอได้
โดย bolue จ 08 มิ.ย. 2020 10:56 am บอร์ด Booststap Knowledge
0
124
จ 08 มิ.ย. 2020 10:56 am โดย bolue
ส่วนสำคัญของใบกำกับภาษี
โดย natthanit.r2538 ส 06 มิ.ย. 2020 5:56 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
90
ส 06 มิ.ย. 2020 5:56 pm โดย natthanit.r2538
วิธีการ ไล่สีพื้นหลัง โดย css
โดย bolue ส 06 มิ.ย. 2020 5:03 pm บอร์ด CSS Knowledge
1
111
จ 08 มิ.ย. 2020 1:52 pm โดย LEG
วิธีการสร้าง nav-tabs โดย bootstrap
โดย bolue ส 06 มิ.ย. 2020 4:52 pm บอร์ด Booststap Knowledge
0
111
ส 06 มิ.ย. 2020 4:52 pm โดย bolue
วิธีกดภาพ เล็กด้านข้าง แล้วโชว์ภาพใหญ่ ในพื้นที่ดำๆ โดยใช้ javascript
โดย bolue ส 06 มิ.ย. 2020 4:24 pm บอร์ด Jquery & Ajax Knowledge
0
106
ส 06 มิ.ย. 2020 4:24 pm โดย bolue
กดภาพเล็กๆ ด้านข้าง แล้วโชว์ภาพใหญ่ ในพื้นที่ดำๆ ทำยังไง
โดย bolue ส 06 มิ.ย. 2020 11:20 am บอร์ด JavaScript & Jquery Ajax
2
159
จ 08 มิ.ย. 2020 1:52 pm โดย LEG
Celeb net worth?
โดย Bailey99 ศ 05 มิ.ย. 2020 7:03 pm บอร์ด PHP Knowledge
1
110
ศ 05 มิ.ย. 2020 7:28 pm โดย rajneeskumar