PHP Array การสลับตำแหน่ง Array ระหว่าง key => value แบบไม่ต้องพิมพ์ใหม่ ด้วย array_flip(), var_export()
จากรูปด้านล่างนี้ จะเห็นว่ามี key ที่ชื่อว่า image/jpeg สองบรรทัด ทำให้ value ด้านหลังทับกันเหลือเพียงแค่ jpg ตัวสุดท้าย แต่ jpeg บรรทัดก่อนหน้านั้นหายไป
เนื่องจากการกำหนดชื่อ key ของอาร์เรย์ ต้องไม่เป็นชื่อซ้ำกัน ดังนั้น จึงจำเป็นที่จะต้องสลับตำแหน่งระหว่าง key และ value กลับด้านกัน ซึ่งฟังก์ชั่นที่ใช้ก็คือ array_flip()
ผลลัพธ์เมื่อใช้ array_flip() จะเห็นว่าสามารถกลับด้านข้อมูลได้ แต่ทีนี้จะทำยังไงเพื่อเอามาแทนที่โค้ดเดิมได้ เพราะการ print_r() เป็นเพียงแค่การแสดงผลลัพธ์ออกมาให้เห็น แต่ไม่ได้อยู่ในรูปแบบของซอร์สโค้ด PHP
และพระเอกของงานนี้ก็คือ var_export() ซึ่งทุกท่านอาจจะเคยเห็นผ่านตากับฟังก์ชั่น var_dump() มาบ้าง ซึ่งเป็นการแสดงข้อมูลออกมาเหมือนกับ print_r() แต่มีรายละเอียดที่มากกว่า
แต่ var_export() จะแตกต่างออกไป เพราะสามารถแสดงข้อมูลอาร์เรย์ออกมาในรูปแบบของซอร์สโค้ด PHP เพื่อคัดลอกนำไปใช้งานต่อได้เลย
ทีนี้ก็ถึงเวลาที่เราต้องเขียนโค้ดเพื่อดูผลลัพธ์กันแล้ว
1. สลับค่าในตัวแปร $this->file_allow ด้วย array_flip()
$new_array = array_flip($this->file_allow);
2. แสดงข้อมูลในรูปแบบใหม่หลังจากที่สลับด้านเรียบร้อย ด้วยฟังก์ชั่น var_export()
var_export($new_array);
3. เปิดหน้าเว็บที่แสดงผลลัพธ์ สังเกตว่าโค้ดจะออกมากองรวมกันไม่สวยงาม
4. เขียนโค้ดแทรกแท็ก HTML เพื่อจัดระเบียบให้สวยงามด้วย <pre></pre>
echo '<pre>';
var_export($new_array);
echo '</pre>';
5. เปิดหน้าเว็บดูผลลัพธ์อีกครั้ง
6. ทำการคัดลอกซอร์สโค้ดที่ได้ไปใช้งานได้ทันที
เนื่องจากการกำหนดชื่อ key ของอาร์เรย์ ต้องไม่เป็นชื่อซ้ำกัน ดังนั้น จึงจำเป็นที่จะต้องสลับตำแหน่งระหว่าง key และ value กลับด้านกัน ซึ่งฟังก์ชั่นที่ใช้ก็คือ array_flip()
ผลลัพธ์เมื่อใช้ array_flip() จะเห็นว่าสามารถกลับด้านข้อมูลได้ แต่ทีนี้จะทำยังไงเพื่อเอามาแทนที่โค้ดเดิมได้ เพราะการ print_r() เป็นเพียงแค่การแสดงผลลัพธ์ออกมาให้เห็น แต่ไม่ได้อยู่ในรูปแบบของซอร์สโค้ด PHP
และพระเอกของงานนี้ก็คือ var_export() ซึ่งทุกท่านอาจจะเคยเห็นผ่านตากับฟังก์ชั่น var_dump() มาบ้าง ซึ่งเป็นการแสดงข้อมูลออกมาเหมือนกับ print_r() แต่มีรายละเอียดที่มากกว่า
แต่ var_export() จะแตกต่างออกไป เพราะสามารถแสดงข้อมูลอาร์เรย์ออกมาในรูปแบบของซอร์สโค้ด PHP เพื่อคัดลอกนำไปใช้งานต่อได้เลย
ทีนี้ก็ถึงเวลาที่เราต้องเขียนโค้ดเพื่อดูผลลัพธ์กันแล้ว
1. สลับค่าในตัวแปร $this->file_allow ด้วย array_flip()
$new_array = array_flip($this->file_allow);
2. แสดงข้อมูลในรูปแบบใหม่หลังจากที่สลับด้านเรียบร้อย ด้วยฟังก์ชั่น var_export()
var_export($new_array);
3. เปิดหน้าเว็บที่แสดงผลลัพธ์ สังเกตว่าโค้ดจะออกมากองรวมกันไม่สวยงาม
4. เขียนโค้ดแทรกแท็ก HTML เพื่อจัดระเบียบให้สวยงามด้วย <pre></pre>
echo '<pre>';
var_export($new_array);
echo '</pre>';
5. เปิดหน้าเว็บดูผลลัพธ์อีกครั้ง
6. ทำการคัดลอกซอร์สโค้ดที่ได้ไปใช้งานได้ทันที
ความคิดเห็น
แสดงความคิดเห็น