Upload
jubnatthawan-phoonson
View
899
Download
2
Embed Size (px)
DESCRIPTION
Citation preview
แนะน าภาษา PHP และ Syntax เบื้องต้น
โดย
อ.เรวด ี พพิฒัน์สูงเนนิ
สาขาวชิาวทิยาการคอมพวิเตอร์และเทคโนโลยสีารสนเทศ
คณะวทิยาศาสตร ์ มหาวิทยาลยัราชภัฏอดุรธานี
Basic PHP Programming
หลักการท างานของ
• เว็บ หรือ WWW (World Wide Web) เป็นบริการหนึ่งในระบบอินเทอร์เน็ต ที่ท าให้ผู้ใช้ (web client) มีมุมมองของเพจที่เชื่อมต่อกันในลักษณะของโครงข่ายใยแมงมุม โดยเว็บเพจเหล่านั้นอาจจะเก็บอยู่ในเครื่องเดียวกัน หรือคนละเครื่องทั่วโลก
• หลักการท างานของ WWW อาศัยหลกัการของ Client/Server
• โดย Client คือ Web Browser (IE , FireFox , Chrome) • ส่วน Server คือ Web Server (Apache , IIS)
HTTP (HyperText Transfer Protocol)
• เป็นโปรโตคอลส าหรับ WWW (ภาษาท่ี Web Sever และ Web browser คุยกัน)
HTTP Request
HTTP Response
PHP
• ย่อมาจาก PHP: Hypertext Preprocessor• PHP เป็นภาษาคอมพิวเตอร์ที่ท างานบนเครื่องฝั่งเซิร์ฟเวอร์
(Server –Side Scripting Language)• PHP สนับสนุนระบบจัดการฐานข้อมูลหลากหลาย เช่น
(MySQL, Informix, Oracle, Sybase, Solid, PostgreSQL, Generic ODBC, etc.)
• PHP เป็น open source software• PHP ดาวน์โหลดและใช้งานฟรี
เขียนโปรแกรม PHP ต้องมีอะไรบ้าง ?
• Web Browser (IE , Chrome , Firefox เป็นต้น)
• โปรแกรม Web Server ใช้ Apache Web Server ดาวน์โหลดได้ที่ www.apache.org
• โปรแกรมภาษา PHP (PHP Interpreter และตัวสนับสนุนต่างๆ) ดาวน์โหลดได้ที่ www.php.net
• โปรแกรมจัดการฐานข้อมูล MySQL ดาวน์โหลดได้ที่ www.mysql.com
Appserv
• Appserv เป็นซอฟต์แวร์ที่ท าให้สามารถติดตั้งเครื่องมือท่ีจะพัฒนาโปรแกรมด้วย PHP ได้ง่าย โดยรวมเอา Apache , PHP , MySql , PhpMyAdmin เข้าไว้ด้วยกัน
• ดาวน์โหลด Appserv ได้ที่ www.appservnetwork.com
การท างานของ PHP
Basic PHP Syntax• ค าสั่ง PHP เขียนภายในแท็ก <?php …. และจบด้วย ?>• เอกสาร HTML ที่มีการเขียนค าสั่ง PHP อยูด่้วยจะต้องบันทึกชื่อไฟล ์.php
เสมอ• ตัวอย่างการเขียน PHP
• ประโยคของ PHP จบท้ายประโยคด้วยเครื่องหมาย semi colon (;)• ค าสั่งของ PHP เป็น Case-sensitive (ตัวเล็ก-ใหญ่ ต่างกัน)
<html>< body>< ?php
echo "Hello World";?>< /body>< /html>
Comment ใน PHP
• PHP Interpreter จะไม่สนใจคอมเมนต ์ในการตีความหมายและการประมวลผล แมว้่าส่งที่อยู่ในคอมเมนต์จะเป็นโค้ด PHP ก็ตาม
รูปแบบคอมเมนต์ สัญลักษณ์ที่ใช้ ค ำอธิบำย
แบบบรรทดัดียว // หรือ # ข้อความใด ๆ ท่ีอยูห่ลงัเคร่ืองหมายนีจ้นจบบรรทดั จะกลายเป็นคอมเมนต์
แบบหลายบรรทดั /* … */ ข้อความท่ีอยูร่ะหวา่ง /* กบั */ จะกลายเป็นคอมเมนต์
ค าสั่ง echo
• ค าสัง่ echo เป็นค าสั่งที่แสดงข้อมูลบนหน้าเพจ
• รูปแบบ
• ตัวอย่าง
echo “ขอ้ความ” ;
<?phpecho “<h1>Hello World!!!</h>” ;?>
PHP Variables
• ตัวแปร (Variable) คือสิ่งท่ีใช้เก็บค่า(value) หรือข้อมูล(data) ไว้ชัว่คราว เพื่อท่ีจะน าค่านั้นมาใช้งานภายหลัง
• ในภาษา PHP ไม่ต้องการประกาศตัวแปรก่อนใช้งาน แต่สามารถก าหนดค่าให้ตัวแปรได้เลยเมื่อต้องการใช้งาน
• ถ้าตัวแปรทีก่ าหนดค่าให้นั้นยังไม่มีมาก่อน PHP ก็จะสร้างขึ้นมาให้ใหม่ แต่ถ้ามีอยูแ่ล้ว ค่าที่ก าหนดให้ใหมจ่ะไปแทนที่ค่าเดิม
กฎการตั้งชื่อตัวแปร
• ตัวแปร PHP เริ่มต้นด้วยเครื่องหมาย $ และตามด้วยชื่อที่ตั้งขึ้น
• ชื่อตัวแปรขึ้นต้นด้วยตัวอักษร(A-Z , a-z) หรือ เครื่องหมาย _ (underscore) เท่านั้น
• ชื่อตัวแปรสามารถประกอบด้วยตัวอกัษรและตัวเลขปนกันได้• ชื่อตัวแปรหา้มมีช่องว่างภายในชื่อ• ชื่อตัวแปรเป็นแบบ case-sensitive (ตัวอักษรเล็ก-ใหญ่
ต่างกัน)
การประกาศตัวแปรใน PHP
• ตัวอย่าง
<?php$mycar = "Volvo";$number = 100;$money = 12500.75;$status = true;
echo gettype($mycar) . "<br />";echo gettype($number) . "<br />";echo gettype($money) . "<br />";echo gettype($status) . "<br />";
?>
การแสดงค่าจากตัวแปรพร้อมกับค่าสตริงในการแสดงค่าจากสตริง (string Literal) จะครอบด้วยเครื่องหมาย (“) หรือ (‘)
ตัวอย่างที่ 1 กรณีแสดงด้วย double quote
ผลลัพธ์
หรือ
การแสดงค่าจากตัวแปรพร้อมกับค่าสตริงในการแสดงค่าจากสตริง (string Literal) จะครอบด้วยเครื่องหมาย (“) หรือ (‘)
ตัวอย่างที่ 2 กรณีแสดงด้วย Single quote
ผลลัพธ์
การแสดงค่าจากตัวแปรพร้อมกับค่าสตริงในการแสดงค่าจากสตริง (string Literal) จะครอบด้วยเครื่องหมาย (“) หรือ (‘)
ตัวอย่างที่ 3 กรณีแสดงค่าจากตัวแปรต่อด้วยข้อความติดกัน
ผลลัพธ์
การแสดงค่าจากตัวแปรพร้อมกับค่าสตริงในการแสดงค่าจากสตริง (string Literal) จะครอบด้วยเครื่องหมาย (“) หรือ (‘)
ตัวอย่างที่ 4 กรณีไม่ต้องการตีความหมายค่าจากตัวแปร ให้ใช้เครื่องหมาย \ ไว้หน้าตัวแปร
ผลลัพธ์
การแสดงค่าจากตัวแปรพร้อมกับค่าสตริงในการแสดงค่าจากสตริง (string Literal) จะครอบด้วยเครื่องหมาย (“) หรือ (‘)
ตัวอย่างที่ 5 กรณีใชเ้ครื่องหมาย double quote ผสมกับ single quote
ผลลัพธ์
Literal
• Literal คือ ค่าที่เขียนหรือก าหนดลงในโค้ดโปรแกรมโดยตรง
• เช่น “Hello” เป็น Literal ชนิดสตรงิ (String Literal)
• เช่น 123 เป็น Literal ชนิดเลขจ านวนเต็ม(Integer Literal)
• เช่น true เป็น Literal ชนิดตรรกะ(Boolean Literal)
ค่าคงที่ (Constant)
• ค่าคงที่ (Constant) คือชื่อที่ก าหนดขึ้นมาให้เก็บค่าข้อมูลหนึ่งๆ ซึ่งไม่สามารถเปลี่ยนแปลงได้
• รูปแบบ
• ตัวอย่าง
define(“ชือ่คา่คงที”่ , “คา่ทีก่ าหนด”);
นิพจน์และตัวด าเนินการ
• นิพจน์ (Expression) หมายถึง ส่วนของโค้ดโปรแกรมที่มีค่า หรือไม่มีค่าก็ตาม
• ดังนั้น ตัวแปร , Literal และ ค่าคงที่ จึงถือว่าเป็นนิพจน์
• นอกจากนี้ยังสามารถสร้างนิพจน์ที่ซับซ้อน โดยน าเอาตัวแปร , Literal และค่าคงท่ีมาด าเนินการกับตัวด าเนินการ(Operator)
• เช่น
$price * 0.07 ;
ตัวด าเนินการ (Operator)• ตัวด าเนินการ (Operator) คือ เคร่ืองหมายหรือสัญลักษณ์ท่ีใช้
ด าเนินการกับค่า แบ่งออกเป็น– ตัวด าเนินการคณิตศาสตร์ (Arithmetic Operator)– ตัวด าเนินการสตริง (String Operator)– ตัวด าเนินการก าหนดค่า (Assignment Operator)– ตัวด าเนินการเพิ่ม/ลดค่า (Incrementing/Decrementing
Operator)– ตัวด าเนินการเปรียบเทียบ (Comparison Operator)– ตัวด าเนินการตรรกศาสตร์ (Logical Operator)– ตัวด าเนินการอาร์เรย์ (Array Operator)
Arithmetic Operators
Operator Name Description Example Result
x + y Addition Sum of x and y 2 + 2 4
x - y Subtraction Difference of x and y 5 - 2 3
x * yMultiplication
Product of x and y 5 * 2 10
x / y Division Quotient of x and y 15 / 5 3
x % y ModulusRemainder of x divided by y
5 % 210 % 810 % 2
120
- x Negation Opposite of x - 2
a . b Concatenation
Concatenate two strings "Hi" . "Ha" HiHa
Assignment Operators
Assignment Same as... Description
x = y x = yThe left operand gets set to the value of the expression on the right
x += y x = x + y Addition
x -= y x = x - y Subtraction
x *= y x = x * y Multiplication
x /= y x = x / y Division
x %= y x = x % y Modulus
a .= b a = a . b Concatenate two strings
Incrementing/Decrementing Operators
Operator Name Description
++ x Pre-increment Increments x by one, then returns x
x ++ Post-increment Returns x, then increments x by one
-- x Pre-decrement Decrements x by one, then returns x
x -- Post-decrement Returns x, then decrements x by one
Comparison OperatorsOperator Name Description Example
x == y Equal True if x is equal to y 5==8 returns false
x === y IdenticalTrue if x is equal to y, and they are of same type
5==="5" returns false
x != y Not equal True if x is not equal to y 5!=8 returns true
x <> y Not equal True if x is not equal to y 5<>8 returns true
x !== y Not identicalTrue if x is not equal to y, or they are not of same type
5!=="5" returns true
x > y Greater than True if x is greater than y 5>8 returns false
x < y Less than True if x is less than y 5<8 returns true
x >= yGreater than or equal to
True if x is greater than or equal to y 5>=8 returns false
x <= yLess than or equal to
True if x is less than or equal to y 5<=8 returns true
Logical OperatorsOperator Name Description Example
x and y And True if both x and y are truex=6y=3(x < 10 and y > 1) returns true
x or y Or True if either or both x and y are truex=6y=3(x==6 or y==5) returns true
x xor y Xor True if either x or y is true, but not bothx=6y=3(x==6 xor y==3) returns false
x && y And True if both x and y are truex=6y=3(x < 10 && y > 1) returns true
x || y Or True if either or both x and y are truex=6y=3(x==5 || y==5) returns false
! x Not True if x is not truex=6y=3!(x==y) returns true