ฟังก์ชัน array_slice() ของ PHP

ตัวอย่าง

เริ่มตั้งแต่องค์ประกอบที่สามของแถว และคืนค่าองค์ประกอบทั้งหมดในแถวของเรียงตามลำดับ:

<?php
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,2));
?>

ปฏิบัติการทดลอง

คำนิยามและการใช้งาน

ฟังก์ชัน array_slice() ใช้เลือกช่วงขององค์ประกอบในแถวตามเงื่อนไขและคืนค่า

หมายเหตุ:ถ้ามีชื่อในแถวตัวอักษร แถวที่คืนค่าจะรักษาชื่อตามตาราง (ดูตัวอย่าง 4)

ศัพท์

array_slice(array,start,length,preserve)
ตัวแปร คำอธิบาย
array จำเป็น. กำหนดแถว.
start

จำเป็น. ตัวเลข. กำหนดตำแหน่งเริ่มต้นขององค์ประกอบที่ต้องการ 0 = องค์ประกอบแรก。

ถ้าค่านี้ตั้งเป็นตัวเลขบวก จะเริ่มตั้งแต่หน้าต้นของแถว。

ถ้าค่านี้ตั้งเป็นตัวเลขลบ จะเริ่มตั้งแต่สุดท้ายของแถว โดยใช้ค่า absolute ของ start。-2 หมายถึงจากองค์ประกอบที่สองของแถวที่สุดท้าย。

length

เลือกได้. ตัวเลข. กำหนดความยาวของแถวที่จะคืนค่า.

ถ้าค่านี้ตั้งค่าเป็นตัวเลข จะคืนค่าตัวเลขององค์ประกอบ

ถ้าค่านี้ตั้งค่าเป็นตัวเลขลบ ฟังก์ชันจะหยุดนำออกมาที่ตำแหน่งที่อยู่ห่างจากสุดของแอร์เรย์นั้นๆ

ถ้าค่านี้ไม่ถูกตั้งค่า จะคืนค่าทุกองค์ประกอบตั้งแต่ตำแหน่งที่ตั้งค่าโดย start จนถึงสุดของแอร์เรย์

preserve

ใช้เป็นตัวเลือก กำหนดว่าฟังก์ชันควรกักคงชื่อฟิลด์หรือปรับเปลี่ยนชื่อฟิลด์ ค่าที่เป็นไปได้:

  • true - ปริมาณเริ่มต้น คงชื่อฟิลด์
  • false - ปริมาณเริ่มต้น ทำการปรับเปลี่ยนชื่อฟิลด์

รายละเอียดเทคนิค

ค่าที่คืนค่า: คืนค่าส่วนที่เลือกของแอร์เรย์
PHP รุ่น: 4+
บันทึกการปรับปรุง: เพิ่มเติมใน PHP 5.0.2 preserve ตัวแปร。

ตัวอย่างเพิ่มเติม

ตัวอย่าง 1

เอาออกมาจากองค์ประกอบที่สองของแอร์เรย์ และคืนค่าออกมาเพียงสององค์ประกอบ:

<?php
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,1,2));
?>

ปฏิบัติการทดลอง

ตัวอย่าง 2

ใช้เลขลบ start ตัวแปร:

<?php
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,-2,1));
?>

ปฏิบัติการทดลอง

ตัวอย่าง 3

บุกเข้าไปใน preserve การตั้งค่าเป็น true:

<?php
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,1,2,true));
?>

ปฏิบัติการทดลอง

ตัวอย่าง 4

การจัดการชื่อฟิลด์แบบข้อความและชื่อฟิลด์เลข

<?php
$a=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow","e"=>"brown");
print_r(array_slice($a,1,2));
$a=array("0"=>"red","1"=>"green","2"=>"blue","3"=>"yellow","4"=>"brown");
print_r(array_slice($a,1,2));
?>

ปฏิบัติการทดลอง