จะค้นหา Array Length ใน PHP ได้อย่างไร

เผยแพร่แล้ว: 2021-12-06

PHP เป็นภาษาสคริปต์สำหรับใช้งานทั่วไปที่เป็นที่นิยม ออกแบบมาเพื่อสร้างเว็บไซต์แบบไดนามิกและโต้ตอบได้ ส่วนใหญ่ใช้สำหรับการพัฒนาเว็บ

PHP ยังมีโครงสร้างข้อมูลที่ทรงพลังที่ทำให้การเขียนโปรแกรม PHP มีประสิทธิภาพสูงท่ามกลางฟังก์ชันการทำงานที่หลากหลาย

โครงสร้างข้อมูลอย่างหนึ่งคือ ARRAYS

ตามคำจำกัดความทั่วไป อาร์เรย์คือชุดของไฟล์ข้อมูลที่คล้ายกันซึ่งจัดเก็บไว้ในตำแหน่งหน่วยความจำที่อยู่ติดกัน คุณสมบัติ length ของอาร์เรย์เป็นจำนวนเต็ม 32 บิตที่ไม่มีเครื่องหมายซึ่งมีตัวเลขมากกว่าดัชนีสูงสุดในอาร์เรย์เสมอ

ในบทความนี้ เราจะเจาะลึกเกี่ยวกับอาร์เรย์และให้ภาพรวมโดยย่อเกี่ยวกับวิธีการค้นหาขนาดของอาร์เรย์ PHP

พูดง่ายๆ ก็คือ คุณสามารถใช้ฟังก์ชัน PHP count() หรือ sizeof() เพื่อค้นหาจำนวนอาร์เรย์ PHP หรือจำนวนองค์ประกอบเฉพาะในอาร์เรย์ เป็นฟังก์ชันในตัวใน PHP ที่ส่งคืนจำนวนหรือขนาดขององค์ประกอบในอาร์เรย์ที่เกี่ยวข้อง

ฟังก์ชัน count ใช้สำหรับนับองค์ประกอบหรือคุณสมบัติของอาร์เรย์

สารบัญ

อาร์เรย์คืออะไร?

ใน PHP อาร์เรย์คือโครงสร้างข้อมูลที่ให้คุณจัดเก็บองค์ประกอบหลายรายการในตัวแปรเดียว โดยจัดเก็บเป็นคู่ของคีย์-ค่า

ขณะเขียนโปรแกรม คุณต้องจัดเก็บข้อมูลประเภทเดียวกันจำนวนมหาศาล ซึ่งต้องมีการกำหนดตัวแปรจำนวนมาก แทบจะเป็นไปไม่ได้เลยที่จะจำตัวแปรทั้งหมดในขณะเขียนโปรแกรม นั่นคือจุดที่อาร์เรย์มีประโยชน์ คุณสามารถกำหนดอาร์เรย์และเก็บตัวแปรทั้งหมดไว้ในอาร์เรย์ได้ ในทางปฏิบัติ อิลิเมนต์ทั้งหมดในอาร์เรย์มีชนิดข้อมูลที่คล้ายคลึงกัน ข้อมูลนี้สามารถเข้าถึงได้โดยตรงโดยใช้หมายเลขดัชนีเท่านั้น

เมื่อใดก็ตามที่คุณต้องการจัดเก็บรายการองค์ประกอบ การใช้อาร์เรย์ถือเป็นการตัดสินใจที่ชาญฉลาด อาร์เรย์มีหลายประเภทและหลายวิธีในการเริ่มต้นอาร์เรย์

ประเภทของอาร์เรย์

โดยทั่วไป อาร์เรย์สามารถจำแนกได้ดังนี้:

1. อาร์เรย์ที่จัดทำดัชนีด้วยตัวเลข

หน้าที่ของอาร์เรย์ที่จัดทำดัชนีคือการจัดเก็บชุดค่าตั้งแต่หนึ่งค่าขึ้นไป คุณสามารถค้นหาข้อมูลโดยใช้ตำแหน่งในอาร์เรย์ที่เกี่ยวข้อง ดัชนีแรกจะเป็นเลขศูนย์เสมอ และจะเพิ่มขึ้นหนึ่งค่าสำหรับแต่ละองค์ประกอบที่ตามมาที่เพิ่มลงในอาร์เรย์ คุณสามารถสร้างอาร์เรย์ที่จัดทำดัชนีโดยเริ่มต้นอาร์เรย์ด้วยตัวอักษรอาร์เรย์หรือเรียกตัวสร้างคลาสอาร์เรย์

2. อาร์เรย์หลายมิติ

ใน ActionScript อาร์เรย์สามารถซ้อนกันเป็นอาร์เรย์ที่เป็นอาร์เรย์ของอาร์เรย์ได้ สิ่งเหล่านี้เรียกว่าอาร์เรย์หลายมิติ ขณะเขียนโปรแกรม ผู้คนมักใช้อาร์เรย์หลายมิติขณะเขียนโปรแกรมโครงสร้างที่ซับซ้อน แต่ละองค์ประกอบประกอบด้วยอาร์เรย์ที่จัดทำดัชนีซึ่งจัดเก็บรายการงาน ในการดึงองค์ประกอบจากอาร์เรย์หลายมิติ คุณต้องใช้ตัวดำเนินการเข้าถึงอาร์เรย์หลายตัวหลังชื่อของอาร์เรย์ระดับบนสุด

3. แอสโซซิเอทีฟอาเรย์

แอสโซซิเอทีฟอาเรย์ก็เหมือนวัตถุ แทนที่จะเป็นดัชนีตัวเลข ดัชนีนี้สร้างจากคีย์และค่าที่ไม่เรียงลำดับเพื่อจัดระเบียบและจัดเก็บข้อมูล แต่ละคีย์มีค่าที่ไม่ซ้ำกันและเชื่อมโยงกับค่าเดียว นั่นคือสิ่งที่คุณต้องใช้ในการเข้าถึงค่านั้น ค่านั้นอาจเป็นข้อมูลประเภทใดก็ได้ รวมถึงตัวเลข อาร์เรย์ อ็อบเจ็กต์ ฯลฯ ในขณะที่ใช้อาร์เรย์ที่เชื่อมโยง คุณควรจดจำค่าโดยใช้สตริงเดียวแทนที่จะเป็นตัวเลขบนดัชนี

จะค้นหาความยาวอาร์เรย์ใน PHP ได้อย่างไร

ความยาวของอาร์เรย์คือจำนวนขององค์ประกอบที่อาร์เรย์สามารถเก็บได้ การใช้ลูปเพื่อนับความยาวของอาร์เรย์มักจะเป็นการเสียเวลา สองวิธีที่ได้รับความนิยมมากที่สุดในการค้นหาความยาวอาร์เรย์ใน PHP คือ ฟังก์ชัน count() และ sizeof()

ในการหาความยาวของอาร์เรย์ คุณควรใช้ความยาวของสมาชิกข้อมูลอาร์เรย์ ที่ให้จำนวนองค์ประกอบที่จัดสรรและไม่ใช่จำนวนองค์ประกอบที่แทรก คุณต้องเขียนคลาสด้วยเมธอดหลักที่สร้างอาร์เรย์จำนวนเต็ม 10 ตัวและรวมกัน

อาร์เรย์ระบุตัวแปรอาร์เรย์ที่จำเป็นในการคำนวณความยาวอาร์เรย์ PHP การระบุโหมดเป็นตัวเลือก ค่าที่เป็นไปได้อาจเป็นศูนย์หรือหนึ่งก็ได้ ซึ่งแทน COUNT_NORMAL และ COUNT_RECURSIVE หากไม่มีค่าใดผ่านอาร์กิวเมนต์ที่สอง ค่าเริ่มต้นจะกลายเป็น COUNT-NORMAL โหมดนี้ไม่นับองค์ประกอบทั้งหมดของอาร์เรย์หลายมิติ

ฟังก์ชัน count() และฟังก์ชัน sizeof() เหมือนกัน พวกเขาดำเนินการตามคำสั่งที่คล้ายกันและส่งคืนองค์ประกอบจำนวนเท่ากันในอาร์เรย์

แต่เพื่อให้ฟังก์ชันเหล่านี้ทำงานได้อย่างถูกต้อง คุณต้องรู้วิธีเขียนคำสั่งในรูปแบบที่ถูกต้อง ตัวอย่างเช่น ฟังก์ชัน sizeof() ยอมรับสองพารามิเตอร์:

  • Array – พารามิเตอร์นี้ประกอบด้วยอาร์เรย์ที่มีจำนวนองค์ประกอบที่เราต้องนับ
  • โหมด – นี่เป็นพารามิเตอร์ทางเลือกที่สามารถรับค่าสองค่าได้ 0 และ 1 0 เป็นค่าเริ่มต้นที่ไม่นับตัวแปรทั้งหมดของอาร์เรย์หลายมิติ และ 1 จะนับอาร์เรย์แบบเรียกซ้ำ

ดังนั้น ไวยากรณ์ที่เหมาะสมสำหรับคำสั่งนี้จะเป็น:

int sizeof (อาร์เรย์, โหมด);

ฟังก์ชันนี้คืนค่าจำนวนเต็มตามที่แสดงในไวยากรณ์ซึ่งแสดงถึงจำนวนขององค์ประกอบที่มีอยู่ในอาร์เรย์

<?php

$months = array("มกราคม", กุมภาพันธ์", มีนาคม", "เมษายน");

// กำลังพิมพ์ขนาดอาร์เรย์

จำนวนเสียงสะท้อน($เดือน)

เสียงสะท้อน “<br>”;

ขนาดของเสียงสะท้อน($เดือน);

?>

ฟังก์ชั่นอาร์เรย์ที่มีประโยชน์

  • ฟังก์ชัน count() ใช้ในการนับจำนวนองค์ประกอบในอาร์เรย์ สิ่งนี้ยังมีประโยชน์เมื่อคุณต้องการสรุปอาร์เรย์ด้วยการวนซ้ำ
  • ฟังก์ชัน is_array เป็นหนึ่งในฟังก์ชันที่มีประโยชน์ที่สุด เนื่องจากจะตรวจสอบว่าตัวแปรเป็นอาร์เรย์หรือข้อมูลประเภทอื่นหรือไม่
  • ฟังก์ชัน in_array ช่วยให้คุณตรวจสอบองค์ประกอบ และอาร์กิวเมนต์ที่สองคือตัวอาร์เรย์เอง
  • ฟังก์ชันเสียงระเบิดช่วยกระจายสตริงเป็นหลายบิตและส่งกลับเป็นอาร์เรย์
  • ฟังก์ชัน Implode ทำงานตรงข้ามกับฟังก์ชัน Explosive ใช้ชุดของอาร์เรย์และติดเข้าด้วยกันเป็นสตริงเดียว
  • ฟังก์ชัน array_push ใช้เพื่อเพิ่มองค์ประกอบใหม่ต่อท้ายอาร์เรย์
  • ฟังก์ชัน array_pop ช่วยในการลบองค์ประกอบสุดท้ายออกจากส่วนท้ายของอาร์เรย์

พัฒนาทักษะด้วย upGrad

หากคุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับวิธีการทำงานของอาร์เรย์และ PHP ในกรณีนั้น เราขอแนะนำ upGrad's Master of Science in Data Science จาก Liverpool John Moores University และ IIIT Bangalore ซึ่งเป็นหลักสูตรออนไลน์ 18 เดือนที่รวมความเชี่ยวชาญเฉพาะด้านสามสาขา โปรแกรมประกอบด้วยเนื้อหาที่ดีที่สุดในชั้นเรียน สื่อการเรียนรู้มากกว่า 500 ชั่วโมง เซสชันการฝึกสอน 25 1:8 และเซสชันสดมากกว่า 20 รายการ

นักเรียนจะได้รับประโยชน์จากโอกาสในการทำงานร่วมกันมากมายด้วยการเข้าถึงฐานการเรียนรู้มากกว่า 40,000 แห่งของ upGrad

ดังนั้นสิ่งที่คุณรอ? สำรองที่นั่งได้แล้ววันนี้!

เรียนรู้ หลักสูตรวิทยาศาสตร์ข้อมูล ออนไลน์จากมหาวิทยาลัยชั้นนำของโลก รับโปรแกรม PG สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโท เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว

PHP คืออะไรและทำไมจึงใช้

PHP เป็นภาษาฝั่งเซิร์ฟเวอร์ซึ่งมีมาเกือบ 25 ปีแล้ว Hypertext Preprocessor (PHP) เป็นภาษาสคริปต์ทั่วไปที่ใช้ในการสร้างเว็บไซต์เชิงโต้ตอบเป็นประจำ เป็นหนึ่งในภาษาแรกๆ ที่สามารถแทรกลงใน HTML ได้ ทำให้หน้าเว็บมีความเกี่ยวข้องและเป็นมิตรกับผู้ใช้มากขึ้น

ฟังก์ชัน sizeof() และ count() ต่างกันอย่างไร

ตามเอกสารอย่างเป็นทางการของ PHP ไม่มีความแตกต่างระหว่างสองฟังก์ชันนี้ พวกเขาให้ผลลัพธ์ที่เหมือนกันกับคำสั่งที่คล้ายคลึงกัน ความแตกต่างหลักอยู่ที่วิธีการตรวจหาจำนวนตัวแปรในอาร์เรย์หนึ่งๆ แต่ควรใช้ฟังก์ชัน count() เนื่องจากโปรแกรมเมอร์คนอื่นอาจคาดหวังให้ฟังก์ชัน sizeof() ส่งคืนค่าขนาดของอาร์เรย์เฉพาะในหน่วยไบต์หรือหน่วยความจำ

มีข้อ จำกัด เกี่ยวกับความยาวอาร์เรย์ใน PHP หรือไม่?

ในทางเทคนิคแล้วไม่มีขีดจำกัดสูงสุดสำหรับอาร์เรย์ มีข้อ จำกัด เริ่มต้นในหน่วยความจำของสคริปต์ที่คุณสามารถใช้ได้ แต่สามารถเปลี่ยนได้จาก “memory_limit” ในการกำหนดค่า php.ini ของคุณ แต่ถ้าอาร์เรย์ของคุณมีขนาดใหญ่กว่าความจุที่ต้องการ ระบบจะแสดงข้อผิดพลาด "หน่วยความจำไม่เพียงพอ"