ในภาษา PHP นั้น เวลาเราจะสร้าง Array ขึ้นมา เรามักจะใช้คำสั่งที่เราคุ้นเคยกันดีนั่นก็คือ array()
<?php $array = array( 'name'=>'select2web', 'domain'=>'.com', 'fullname'=>'select2web.com', ); print_r( $array ); ?> |
ผลลัพธ์ที่ได้ก็จะเป็นดังนี้
Array ( [name] => select2web [domain] => .com [fullname] => select2web.com ) |
แต่ท่านทราบหรือไม่ว่า เราสามารถสร้าง array ได้ด้วยการใช้คำสั่งอีกคำสั่งหนึ่งก็คือ compact()
$name = 'select2web'; $domain = '.com'; $fullname = 'select2web.com'; $array = compact( 'name' , 'domain' , 'fullname' ); print_r( $array ); ?> |
ผลลัพธ์ที่ได้เหมือนกับการใช้คำสั่ง array()
Array ( [name] => select2web [domain] => .com [fullname] => select2web.com ) |
คำสั่ง compact() นี้มันจะเอาชื่อของตัวแปรไปเป็นคีย์ของ array และเอาค่าของตัวแปรไปเป็นค่าของ array อีกอย่างข้อที่ควรสังเกตุ
compact( 'name' , 'domain' , 'fullname' ) |
ท่านจะเห็นว่าชื่อตัวแปรที่เราส่งเข้าไปในคำสั่ง compact นั้นจะไม่มีเครื่องหมาย $ เพราะฉะนั้นควรระวังตรงนี้
ท่านลองนำมันไปประยุกต์ใช้เอาละกันครับ ผมเพียงแต่แสดงให้ท่านเห็นว่าฟังก์ชั่นของ PHP นั้นมีหลายทางเลือกทีเดียว หรือถ้าท่านไม่คิดจะใช้มัน ก็รู้ไว้ใช่ว่าใส่บ่าแบกหามครับ เวลาไปก้อปโค้ดชาวบ้านมาดูหรือไปเจอโค้ดของใครเข้า เผื่อจะจำได้ลางๆว่า อ๋อ มันไว้สำหรับสร้าง array
ข้อมูลเพิ่มเติม :
http://www.w3schools.com/php/func_array_compact.asp
http://php.net/manual/en/function.compact.php
compact, extract ใน PHP
fog says:
19/12/2555 at 19/12/2555
ขอบคุณครับ ผมเพิ่งไปเจอโค้ดชาวบ้าน แล้วเจอ compact เลยมาหาดู มันก็คือการสร้าง array อีกแบบนี่เอง :D