วันเสาร์ที่ 6 ธันวาคม พ.ศ. 2557

ความรู้เบื้องต้น (Introduction)

1. ความรู้เบื้องต้น (Introduction)
- ติดตั้งโปรแกรมจาก thaiabc.com เพื่อทำให้คอมพิวเตอร์ของตนเองเป็น Web Server (ทดสอบเปิด http://127.0.0.1)
- เขียนโปรแกรมแรกด้วย notepad ชื่อ x.php เก็บใน c:\thaiabc\apache\apache2\htdocs ตามตัวอย่าง ex.101
- เปิด Internet Explorer เปิด URL ชื่อ http://127.0.0.1/x.php เพื่อเริ่มต้นเรียน (ระยะทางหมื่นลี้ เริ่มที่ก้าวแรก)

ex.101

zz101.php
คำสั่ง echo และ print แบบธรรมดา
<?
echo "5";
echo "5" , 5 , 5;
print "5";
?>
ตัวอย่างผลลัพธ์ หรืออธิบาย
55555
# echo และ print ส่ง String ออกเหมือนกัน
# echo ใช้แสดง String หลายตัว และแยกด้วย , ได้
# print ใช้แสดงหลาย String ที่แยกด้วย , ไม่ได้

ex.102

zz102.php
คำสั่ง echo และ print แบบคำนวณ
<?
echo "5 + 5";
echo '5 + 5';
echo 5 + 5;
echo "<br>";
print "5 + 5";
print '5 + 5';
print 5 + 5;
?>
ตัวอย่างผลลัพธ์ หรืออธิบาย
5 + 55 + 510
5 + 55 + 510
# ผลลัพธ์ของการใช้ + กับค่าคงที่ ให้ผลเหมือนกัน
# echo "5 + 5" จะไม่รวมค่าเป็น 10 เพราะผลลัพธ์เป็น String
# echo 5 + 5 ผลลัพธ์เป็นผลรวม

ex.103

zz103.php
คำสั่ง echo และ print แบบใช้ตัวแปร
<?
$a = 5;
echo '$a + $a';
echo "$a + $a";
echo "<br>";
print '$a + $a';
print "$a + $a";
?>
ตัวอย่างผลลัพธ์ หรืออธิบาย
$a + $a5 + 5
$a + $a5 + 5
# ผลลัพธ์ของการใช้ + กับตัวแปร ให้ผลเหมือนกัน

ex.104

zz104.php
คำสั่ง echo และ print แบบใช้ตัวแปร และคำนวณ
<?
$a = 5;
echo '$a' + ($a + $a);
echo "$a" + ($a + $a);
echo "<br>";
print '$a' + ($a + $a);
print "$a" + ($a + $a);
?>
ตัวอย่างผลลัพธ์ หรืออธิบาย
1015
1015
# echo '1' + 2; มีการคำนวณแต่ '1' = 0 ผลลัพธ์จึงเป็น 2

ex.105

zz105.php
แสดงความแตกต่างของ . และ +
<?
echo "1" + 2 . 4 . "<br>";
echo "1" + 2 . 4 + 8 . 16 . "<br>";
echo "1" . 2 + 4 . 8 + 16 + "<br>";
print "1" + 2 . 4 . "<br>";
print "1" + 2 . 4 + 8 . 16 . "<br>";
print "1" . 2 + 4 . 8 + 16 + "<br>";
?>
ตัวอย่างผลลัพธ์ หรืออธิบาย
34
4216
18434
4216
184
# echo "1" + 2; ให้ผลเป็นการคำนวณ คือ 3
# echo "1" + 2 . 4 + 8; ให้ผลเป็น 3 . 4 + 8 = 34 + 8 = 42
# echo 16 + "<br>"; ไม่ error ผลบวกเป็น 16
# "<br>" ในบรรทัดที่ 4 ไม่ Break เพราะทำหน้าที่เป็นตัวเลข

ex.106

zz106.php
เปรียบเทียบการจับคู่จากข้างหน้าไปข้างหลัง
<?
$a = 5;
echo '$a' . "$a" + 5 . "<br>";
echo ('$a' . "$a") + 5 . "<br>";
echo '$a' . ("$a" + 5) . "<br>";
echo 5 + '$a' . "$a" .  "<br>";
echo (5 + '$a') . "$a" .  "<br>";
echo 5 + ('$a' . "$a") .  "<br>";
?>
ตัวอย่างผลลัพธ์ หรืออธิบาย
5
5
$a10
55
55
5
# การประมวลผลทำทีละคู่จากข้างหน้าไปข้างหลัง

ex.107

zz107.php
แสดงการใช้คำสั่ง pre ร่วมกับ \n
<?
$a = 5;
echo "<pre>";
echo $a . $a , $a , $a + $a . "\n";
echo '$a' . "$a" + $a . '$a' . "\n";
echo '$a'  , $a + "$a";
?>
ตัวอย่างผลลัพธ์ หรืออธิบาย
55510
5$a
$a10

ex.108

zz108.php
การใช้ html ร่วมกับ php แบบธรรมดา
<body bgcolor=#ffffdd>
abc
<?
echo "def";
?>
ghi
ตัวอย่างผลลัพธ์ หรืออธิบาย
abc defghi

ex.109

zz109.php
การใช้ html ร่วมกับ php แบบประกาศ แล้วเรียกใช้
<body bgcolor=#ffffdd>
<? $a = "def"; ?>
abc
<?
echo $a;
?>
ghi
ตัวอย่างผลลัพธ์ หรืออธิบาย
abc defghi
# ประกาศตัวแปรแต่ไม่แสดงผล เช่น <? $a = "def" ?>
# เรียกใช้ตัวแปรแยกกับการประกาศอย่างชัดเจน

ex.110

zz110.php
การใช้ html ร่วมกับ php แบบแทรกค่า
<body bgcolor=#ffffdd>
<? $a = "jkl" ?>
abc
<?="def"?>
ghi
<?=$a?>
ตัวอย่างผลลัพธ์ หรืออธิบาย
abc defghi jkl
# ประกาศตัวแปรแต่ไม่แสดงผล เช่น <? $a = "jkl" ?>
# พิมพ์ค่าคงที่ เช่น <?="def"?>
# พิมพ์ตัวแปร หรือค่าคงที่ เช่น <?=$a?>


ex.111

zz111.php
เครื่องหมายสำหรับกำหนดหมายเหตุ
<?
# wow
// wow
/*
wow
*/
?>
ตัวอย่างผลลัพธ์ หรืออธิบาย
ไม่แสดงผลใด ๆ
# เครื่องหมาย # นำหน้าบรรทัดที่ไม่ต้องการให้มีการประมวลผล
# เครื่องหมาย // นำหน้าบรรทัดที่ไม่ต้องการให้มีการประมวลผล
# เครื่องหมาย /* สำหรับจุดเริ่มกำหนดหมายเหตุ และปิดด้วย */