ให้เรตสมาชิก: 3 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

 บทที่ 11 การใช้ตัวแปร เป็นชื่อของตัวแปร

ภาษา PHP เปิดโอกาสให้เราสามารถเลือกหรือเปลี่ยนชื่อของตัวแปรได้ ตัวอย่างเช่น
 

ไฟล์ตัวอย่าง :: code_ex1.php
<?php
$a = "var1"; 
$$a = 10.3; 
echo "$a ${$a} $$a <BR> "; 
echo "$var1 <BR> ";
?>

 

จากตัวอย่างข้างบน เรากำหนดให้ตัวแปร $a เก็บสตริงค์ "var1" และจะใช้เป็นชื่อของตัวแปรอีกตัวหนึ่ง โดยทางอ้อม  $$a เป็นการอ้างถึงตัวแปรที่มีชื่อเดียวกับค่าของตัวแปร $a (ในกรณีนี้คือ var1) ดังนั้นถ้าเราเขียนว่า $$a หรือ $var1 ก็หมายถึงตัวแปรตัวเดียวกัน ถ้าต้องการแสดงค่าของ $$a โดยใช้คำสั่ง echo โดยอยู่ในสตริงค์ (ระหว่าง double quotations) เราจะต้องเขียน ${$a} ไม่ใช่ $$a เพราะว่า ถ้าเขียนตามแบบหลัง ตัวแปลคำสั่งจะอ่านค่า $a ก่อนแล้วแทนที่ลงในข้อความ ซึ่งจะได้ $var1แทนที่จะเป็นการอ่านค่าของ $var1

เทคนิคนี้ยังสามารถใช้ได้กับฟังก์ชัน ตัวอย่างเช่น
 

ไฟล์ตัวอย่าง :: code_ex2.php
<?php
function foobar()  {
    echo "foobar<BR> ";
 }
function callFunc ($f)  { 
   if ( is_string($f) == true) { 
      $f(); 
   } 
 }
callFunc("foobar");
?>

ตัวอย่างข้างบนอาจจะทำให้เกิดปัญหาถ้าสมมุติว่า $f เป็นชื่อของฟังก์ชันที่ไม่มีอยู่จริง วิธีตรวจสอบคือ การใช้ฟังก์ชัน function_exists() ดังต่อไปนี้

ไฟล์ตัวอย่าง :: code_ex2.php
<?php
function MyFunc() {
print ("ok..<BR> ");
}
$f="myFunc"; 
if ( function_exists($f) ) { 
  $f(); 

else { 
  echo "$f does not exist!"; 
}
?>

ชื่อ
บทที่ 11 การใช้ตัวแปร เป็นชื่อของตัวแปร
หมวดหมู่
PHP Basics, PHP Basics
ฮิต
7586
ผู้สร้างเอกสาร
thatsawan
วันที่สร้างเอกสาร
2014-05-13 19:29:51

chapter_11.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 938 bytes

ผู้อัพโหลดไฟล์ thatsawan

วันที่อัพโหลด 2014-04-10 16:16:07




กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
MOD_MTB_NEWS_RECENT
การติดตั้ง Library บน Arduino IDE
โดย chayakan อ 12 ธ.ค. 2017 5:34 pm บอร์ด IOT - Internet of things
0
15
อ 12 ธ.ค. 2017 5:34 pm โดย chayakan
การติดตั้งโปรแกรม และการใช้งาน ArduinoIDE
โดย chayakan อ 12 ธ.ค. 2017 4:54 pm บอร์ด IOT - Internet of things
0
13
อ 12 ธ.ค. 2017 4:54 pm โดย chayakan
Arduino คืออะไร ?
โดย chayakan อ 12 ธ.ค. 2017 4:01 pm บอร์ด IOT - Internet of things
0
21
อ 12 ธ.ค. 2017 4:01 pm โดย chayakan
จะดึงข้อมูลจากฐานข้อมูล ให้มาแสดงใน PDF ค่ะ
โดย Wallapa อ 12 ธ.ค. 2017 11:33 am บอร์ด Programming - C/C++ & java & Python
3
47
อ 12 ธ.ค. 2017 11:33 am โดย mindphp
รวมงานประจำปี 2560
โดย chayakan อ 12 ธ.ค. 2017 10:58 am บอร์ด M054 - ชญากาณฑ์ ชาญชัย
0
2
อ 12 ธ.ค. 2017 10:58 am โดย chayakan
รวมบทความประจำปี 2560
โดย chayakan อ 12 ธ.ค. 2017 10:58 am บอร์ด M054 - ชญากาณฑ์ ชาญชัย
0
1
อ 12 ธ.ค. 2017 10:58 am โดย chayakan
Note
โดย chayakan อ 12 ธ.ค. 2017 10:54 am บอร์ด M054 - ชญากาณฑ์ ชาญชัย
0
2
อ 12 ธ.ค. 2017 10:54 am โดย chayakan
Work's on Hand ชญากาณฑ์ ชายชัย M054
โดย chayakan อ 12 ธ.ค. 2017 10:53 am บอร์ด M054 - ชญากาณฑ์ ชาญชัย
0
24
อ 12 ธ.ค. 2017 10:53 am โดย chayakan
งานประจำวันที่ 12 ธันวาคม 2560
โดย chayakan อ 12 ธ.ค. 2017 10:48 am บอร์ด M054 - ชญากาณฑ์ ชาญชัย
1
15
อ 12 ธ.ค. 2017 10:48 am โดย chayakan
ใส่ถุงมือกันไว้ก่อน IT - Programmer อุปกรณ์ ที่ควรใส่ เวลาทำงาน
โดย Before Dong อ 12 ธ.ค. 2017 10:37 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
21
อ 12 ธ.ค. 2017 10:37 am โดย Before Dong
ทำความรู้จักกับ Open Stack OpenStack คืออะไร
โดย kubarnaza จ 11 ธ.ค. 2017 5:48 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
22
จ 11 ธ.ค. 2017 5:48 pm โดย kubarnaza
JFormHelper::loadFieldClass('list');
โดย Minanda จ 11 ธ.ค. 2017 10:42 am บอร์ด Joomla Development
3
42
จ 11 ธ.ค. 2017 10:42 am โดย Minanda
ช่วยด้วยครับ ติดตั้ง Component Joomshoping ThaiEdition ลงในจูลล่า 3.5 ไม่ได้อะครับ
โดย sdfza100 จ 11 ธ.ค. 2017 9:50 am บอร์ด Joomla Development
5
42
จ 11 ธ.ค. 2017 9:50 am โดย mindphp
ไม่สามารถเข้าถึงไฟล์ PHP ใน Directory
โดย บุคคลทั่วไป ส 09 ธ.ค. 2017 3:40 pm บอร์ด Joomla Development
4
66
ส 09 ธ.ค. 2017 3:40 pm โดย บุคคลทั่วไป
เผยเทคนิค ดี ๆ ที่สามารถทำให้บ้านและสวนร่มรื่นได้
โดย บุคคลทั่วไป ศ 08 ธ.ค. 2017 4:39 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
34
ศ 08 ธ.ค. 2017 4:39 pm โดย บุคคลทั่วไป
วิธีการติดตั้ง Selenium ลง Python บน Windows
โดย Panchalee พฤ 07 ธ.ค. 2017 6:20 pm บอร์ด Software testing
0
44
พฤ 07 ธ.ค. 2017 6:20 pm โดย Panchalee
แสดงวันที่ปัจจุบันใน Python
โดย Wallapa พฤ 07 ธ.ค. 2017 11:30 am บอร์ด Python Knowledge
0
44
พฤ 07 ธ.ค. 2017 11:30 am โดย Wallapa
เมื่อต้องซ่อมคอมพิวเตอร์
โดย Before Dong พฤ 07 ธ.ค. 2017 10:48 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
56
พฤ 07 ธ.ค. 2017 10:48 am โดย mindphp
ขอวิธี Uninstall selenium web driver ใน python หน่อยค่ะ
โดย Panchalee พฤ 07 ธ.ค. 2017 10:48 am บอร์ด Programming - C/C++ & java & Python
3
54
พฤ 07 ธ.ค. 2017 10:48 am โดย Panchalee
แจกฟรี!! ปฏิทิน CRM ที่รวบรวมซอฟท์แวร CRM ยอดนิยมจากทั่วโลก ปี 2018/2561 พร้อมวันหยุด - โหลดก่อนได้ก่อนอย่ารอช้า!!
โดย Before Dong พ 06 ธ.ค. 2017 3:38 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
108
พ 06 ธ.ค. 2017 3:38 pm โดย Before Dong