Array Search PHP คืออะไร & มันคือ Sttax

เผยแพร่แล้ว: 2021-05-20

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

PHP เป็นหนึ่งในภาษาสคริปต์ที่แพร่หลายและนำมาใช้กันอย่างแพร่หลาย (Zuckerberg เข้ารหัส Facebook ใน PHP) และจัดการการค้นหาอาร์เรย์ได้ค่อนข้างหรูหรา คุณสามารถใช้ลูปเพื่อวิ่งผ่านแต่ละองค์ประกอบได้ แต่นั่นก็เป็นเรื่องยุ่งยากและต้องใช้กำลังดุร้าย แต่มีเมธอดในตัวหลายวิธีที่เราสามารถนำมาใช้ประโยชน์ได้ เช่น in_array(), array_search(), array_keys() และ array_key_exists() ในบล็อกนี้ เราจะมาดูภายใต้ประทุนของ การค้นหาอาร์เรย์ PHP

สารบัญ

ไวยากรณ์

ไวยากรณ์ของ การค้นหาอาร์เรย์ PHP ค่อนข้างตรงไปตรงมาและจำง่าย:

1. array_search (ค่าองค์ประกอบ, อาร์เรย์, เข้มงวด)

อย่างที่คุณเห็น คุณต้องส่งพารามิเตอร์ 3 ตัวไปยัง ฟังก์ชัน การค้นหาอาร์เรย์ PHP :

ค่าองค์ประกอบ – นี่คือค่าที่ต้องค้นหาในอาร์เรย์

อาร์เรย์ – ที่นี่เราระบุอาร์เรย์ที่ต้องค้นหา

เข้มงวด – นี่เป็นพารามิเตอร์ทางเลือก ซึ่งระบุเฉพาะการจับคู่ที่ตรงกันเท่านั้น เป็นพารามิเตอร์ไบนารี ซึ่งสามารถเป็นได้ทั้ง TRUE หรือ FALSE โดยค่าเริ่มต้น ค่านี้จะถูกตั้งค่าเป็น FALSE หากเป็น TRUE จะตรวจสอบประเภทข้อมูล (ความแตกต่างระหว่างจำนวนเต็ม 5 และสตริง “5”) และส่งคืนตำแหน่งขององค์ประกอบ (คีย์) ด้วยประเภทข้อมูลที่ตรงกัน

คุณยังสามารถเลือกที่จะไม่ระบุพารามิเตอร์ STRICT ได้ ซึ่งในกรณีนี้ คุณจะต้องเขียนฟังก์ชันเป็น:

array_search (ค่าองค์ประกอบ อาร์เรย์)

หากไม่พบองค์ประกอบที่มีค่าที่ตรงกัน ฟังก์ชันจะส่งกลับ FALSE หรือหากพบองค์ประกอบที่มีค่าที่ตรงกันมากกว่าหนึ่งองค์ประกอบ ก็จะส่งคืนตำแหน่งขององค์ประกอบที่ตรงกันตัวแรก

ตัวอย่างที่ 1

ให้เราดู การดำเนินการ ค้นหาอาร์เรย์ PHP โดยไม่มีพารามิเตอร์ STRICT ก่อน

<?php $arr1 = array('vinod', 'manish', 'sujay', 'vinit', 'aishwariya');

$out1 = array_search( 'vinit'' ,$arr1); $out1 = array_search( 'vinit'' ,$arr1);

ก้อง $out1; ?>

ผลลัพธ์ในกรณีนี้จะเป็น 3 เนื่องจากองค์ประกอบ 'vinit' เชื่อมโยงกับดัชนี 3 ในอาร์เรย์ (โปรดทราบว่าดัชนีอาร์เรย์เริ่มต้นจาก 0 นั่นคือองค์ประกอบแรกของอาร์เรย์อยู่ที่ตำแหน่งที่ศูนย์)

ตัวอย่าง 2

ค้นหาอาร์เรย์ PHP ด้วยพารามิเตอร์ที่เข้มงวด

ให้เราดูว่าเกิดอะไรขึ้นเมื่อพารามิเตอร์ STRICT ใน การค้นหาอาร์เรย์ PHP ถูกตั้งค่าเป็น TRUE:

<?php $arr2 = อาร์เรย์ (2,3,5,11,13,17,19);

$out2 = array_search("11", $arr2, จริง);

ก้อง $out2; ?>

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

ในทางกลับกัน ให้เรานิยาม STRICT ให้เป็นเท็จ:

<?php $arr3 = อาร์เรย์ (2,3,5,11,13,17,19);

$out3 = array_search("11", $arr3, เท็จ);

ก้อง $out3; ?>

ผลลัพธ์ในกรณีนี้? 3. เนื่องจากฟังก์ชันละเว้นประเภทข้อมูล (เนื่องจาก STRICT ถูกตั้งค่าเป็น FALSE) พบว่าองค์ประกอบ 11 อยู่ในตำแหน่งที่ 4 และส่งคืนคีย์ที่เกี่ยวข้อง (3)

2. in_array ()

ฟังก์ชัน การค้นหาอาร์เรย์ PHP นี้ จะตรวจสอบว่าองค์ประกอบที่ระบุมีอยู่ในอาร์เรย์หรือไม่ ส่งคืน BOOLEAN หมายความว่าหากพบองค์ประกอบ จะส่งกลับ TRUE มิฉะนั้นจะส่งกลับ FALSE

ไวยากรณ์

in_array (ค่าองค์ประกอบ อาร์เรย์ เข้มงวด)

เช่นเดียวกับ array_search () STRICT เป็นพารามิเตอร์ทางเลือก ซึ่งตั้งค่าเป็น FALSE เป็นค่าเริ่มต้น

ตัวอย่างที่ 1

<?php $arr4 = อาร์เรย์ (2,4,6,8,10);

$out4 = in_array(“10”, $arr4, เท็จ);

ก้อง $out4; ?>

ผลลัพธ์ – TRUE

ตัวอย่าง 2

<?php $arr5 = อาร์เรย์ (2,4,6,8,10);

$out5 = in_array(“10”, $arr5, จริง);

ก้อง $out5; ?>

ผลลัพธ์ – FALSE (เนื่องจากฟังก์ชันพบจำนวนเต็ม 10 ในอาร์เรย์ไม่ใช่สตริง 10 ที่ผ่าน)

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

บทสรุป

หากคุณต้องการมีความเชี่ยวชาญใน PHP และสร้างผลกำไรในอาชีพการงาน อย่ามองข้าม หลักสูตรปริญญาตรี / ปริญญาโทสาขาการประยุกต์ใช้คอมพิวเตอร์ ของ upGrad ร่วมกับมหาวิทยาลัย Chandigarh อันทรงเกียรติ (UGC ได้รับการยอมรับ) หลักสูตรนี้จะช่วยให้คุณมีความรู้เชิงลึกในอุตสาหกรรมและการฝึกงานเป็นเวลา 6 เดือน นอกเหนือจากความช่วยเหลือด้านตำแหน่ง คุณยัง สามารถสำรวจ หลักสูตรวิทยาการคอมพิวเตอร์อื่นๆ จากแทร็กซอฟต์แวร์และเทคโนโลยี และยกระดับทักษะการเขียนโปรแกรมของคุณไปอีกระดับ

หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับ PHP, การพัฒนาซอฟต์แวร์ฟูลสแตก, ลองดูโปรแกรม Executive PG ของ upGrad & IIIT-B ในการพัฒนาซอฟต์แวร์ฟูลสแตก ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีการฝึกอบรมที่เข้มงวดมากกว่า 500 ชั่วโมง 9+ โครงการและการมอบหมาย สถานะศิษย์เก่า IIIT-B โครงการหลักในทางปฏิบัติและความช่วยเหลือด้านงานกับบริษัทชั้นนำ

array_search ใน php คืออะไร?

วิธีง่ายๆ ในการค้นหาอาร์เรย์เพื่อหาค่าเฉพาะคือการใช้ฟังก์ชัน array_search() คุณสามารถใช้ array_search() ที่มีดัชนีเป็นอาร์กิวเมนต์แรก หรือไม่มีดัชนีเป็นอาร์กิวเมนต์ที่สอง array_search() คืนค่าคีย์ของอินสแตนซ์แรกของค่าในอาร์เรย์ หรือ FALSE หากไม่พบ array_search เป็นฟังก์ชันในตัวใน PHP ซึ่งรับค่าและอาร์เรย์และส่งกลับดัชนีของค่าที่เกิดขึ้นครั้งแรกในอาร์เรย์

อาร์เรย์ใน PHP คืออะไร?

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

การเรียงลำดับอาร์เรย์ใน PHP คืออะไร?

อาร์เรย์เป็นโครงสร้างข้อมูลพื้นฐานที่สำคัญและใช้กันอย่างแพร่หลายใน PHP ช่วยให้คุณเก็บค่าหลายค่าไว้ในตัวแปรเดียว มีการดำเนินการที่น่าสนใจและมีประโยชน์มากมายสำหรับเราในการจัดการอาร์เรย์ ต่อไปนี้คือการดำเนินการพื้นฐานของอาร์เรย์ใน PHP: การเรียงลำดับ: สามารถจัดเรียงอาร์เรย์ตามลำดับโดยยึดตามคุณสมบัติของอาร์เรย์ ทำได้โดยใช้ฟังก์ชัน sort() นี่คือตัวอย่าง: $movieStars = array('Tom Cruise', 'Angelina Jolie', 'John Travolta'); เรียงลำดับ($movieStars); หากคุณเรียกใช้ตัวอย่างนี้ อาร์เรย์จะถูกจัดเรียงตามตัวอักษรตามคีย์อาร์เรย์ คุณควรรู้ว่าฟังก์ชัน sort() จะจัดเรียงค่าของอาร์เรย์ แต่จะไม่เปลี่ยนอาร์เรย์เดิม คุณต้องทำแยกกัน