คราวที่แล้วเราพูดถึงเรื่องการใช้ function แบบที่ส่งค่าไปหลายๆค่าได้
ครั้งนี้เรามาดูเรื่องเกี่ยวกับการใช้งานตัวแปรแบบขึ้นสูงกันบ้างครับ
เราเรียกตัวแปรชนิดนี้ว่า Variable variables
หรือผมของเรียกมันว่า “ตัวแปร จากตัวแปร”
Variable variables
เคยไหมที่อยากเรียกใช้ตัวแปรสักค่า
โดยที่ชื่อตัวแปรนั้น มาจากผลลัพธ์ของอีกค่าหนึ่ง
ผมขอเรียกมันว่า “ตัวแปร จากตัวแปร”
งงไหมครับ….
ยกตัวอย่างง่ายๆครับ
สมมติว่า
ผมต้องการดึงข้อมูลออกมาว่า วันนี้วันอะไร
สมมติผลลัพธ์ออกมาว่า “Monday”
ผมก็จะเรียกใช้ตัวแปรที่ชื่อ $Monday อย่างนี้น่ะครับ
อาจจะยังไม่ค่อยไม่เข้าใจไม่เป็นไรครับ
มาดูตัวอย่างกันเลยดีกว่า
จาก Code PHP ข้างล่างเป็นการสรุปรูปแบบการใช้งานตัวแปรแบบนี้ได้ดีที่สุดครับ
<?php
$foo = "This is the variable foo";
$bar = "This is the variable bar";
$foobar = "This is the variable foobar";
$foo_name = "foo";
$bar_name = "bar";
echo $foo;
echo $bar;
echo ${$foo_name};
echo ${$bar_name};
echo ${$foo_name.$bar_name};
?>
ผลลัพธ์จะออกมาดังนี้ครับ
This is the variable foo
This is the variable bar
This is the variable foo
This is the variable bar
This is the variable foobar
ผลลัพธ์สองบรรทัดแรกเป็นการเรียกตัวแปรออกมาโดยตรงครับ
ส่วนสามบรรทัดหลังนี้ใช้การเรียกผ่านจากผลของค่าตัวแปรอีกชั้น
echo ${$foo_name};
บรรทัดนี้ จะดึงค่า $foo_name ซึ่งก็คือค่า foo นั่นเอง
ซึ่งเมื่อสรุปออกมาแล้ว บรรทัดนี้ จะดึงค่า
ตัวแปรที่ชื่อ $foo มานั่นเองครับ
อย่างนี้พอเข้าใจไหมครับ…
สำหรับการนำไปใช้งานได้หลากหลายรูปแบบครับ
เช่น
ผมต้องการเอาค่าตัวแปรอีกตัวมาเป้นตัวกำหนดการเรียกใช้ตัวแปรอีกตัวนึง
เช่นการเรียกชื่อวันขึ้นมาดังที่ยกตัวอย่างไปข้างต้นครับ