Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

PHP Variable Basics

บทนำ

ชื่อตัวแปรใน PHP เริ่มต้นด้วยเครื่องหมาย $ ตามด้วยตัวอักษร (A-Z ตัวพิมพ์ใหญ่หรือเล็ก) หรือ underscore และตามด้วยตัวอักษร ตัวเลข หรือ underscore จำนวนเท่าไรก็ได้ ชื่อตัวแปรใน PHP แยกตัวพิมพ์ใหญ่-เล็ก (case sensitive)

ไวยากรณ์

// valid variables $var = 10; $VAR = "Hello"; // different from $var $marks_1 = 67; $_val = 0; // invalid variables var = 10; // not starting with $ $4sqr = 16; // not starting with letter/_ $my name = "Hello"; // white space not allowed in variable name $my$name = "Hello"; // $ character cannot be used after first position

ตัวแรกยังสามารถกำหนดค่าโดยอ้างอิง (by reference) จากตัวแปรอื่นได้ เพื่อกำหนดค่าโดยอ้างอิง ให้เติมเครื่องหมาย & นำหน้าชื่อตัวแปรใน expression การเปลี่ยนค่าของหนึ่งจะสะท้อนในอีกตัว

ตัวอย่าง

<?php $var1 = "Hello"; $var2 = &$var1; echo $var1 . " " . $var2 . "\n"; $var2 = "Hi there"; echo $var1 . " " . $var2 . "\n"; ?>

ผลลัพธ์

จะได้ผลลัพธ์ดังนี้

Hello Hello Hi there Hi there

ตัวแปรที่ยังไม่ initialize จะมีค่า default ขึ้นกับ context ของการใช้งาน ตัวอย่าง integer และ float variables คือ 0 boolean คือ FALSE และ string variable คือ empty string แม้ PHP เวอร์ชันใหม่จะแจ้ง notice

ตัวอย่างต่อไปนี้แสดงผลของ uninitialized variable

ตัวอย่าง

<?php $var1 = 10; $var2 = $var1 + $var2; echo $var1 . " " . $var2 . "\n"; $x = "Hello"; unset($x); var_dump($x); // uninitialized ?>

ผลลัพธ์

จะได้ผลลัพธ์ดังนี้

10 10 NULL PHP Notice: Undefined variable: var2 PHP Notice: Undefined variable: x

ตัวอย่าง uninitialized variable ใน cumulative addition operator

ตัวอย่าง

<?php $sum = $sum + 10; var_dump($sum); ?>

ผลลัพธ์

จะได้ผลลัพธ์ดังนี้

int(10) PHP Notice: Undefined variable: sum

ในตัวอย่างต่อไป default object ถูกสร้างจาก empty value พร้อม warning

ตัวอย่าง

<?php $obj->name = "XYZ"; var_dump($obj); ?>

ผลลัพธ์

จะได้ผลลัพธ์ดังนี้

object(stdClass)#1 (1) { ["name"]=> string(3) "XYZ" } PHP Warning: Creating default object from empty value