27
แนะนาภาษา PHP และ Syntax เบื้องต้น โดย อ.เรวดี พิพัฒน์สูงเนิน สาขาวิชาวิทยาการคอมพิวเตอร์และเทคโนโลยีสารสนเทศ คณะวิทยาศาสตร์ มหาวิทยาลัยราชภัฏอุดรธานี Basic PHP Programming

01 intro php

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: 01 intro php

แนะน าภาษา PHP และ Syntax เบื้องต้น

โดย

อ.เรวด ี พพิฒัน์สูงเนนิ

สาขาวชิาวทิยาการคอมพวิเตอร์และเทคโนโลยสีารสนเทศ

คณะวทิยาศาสตร ์ มหาวิทยาลยัราชภัฏอดุรธานี

Basic PHP Programming

Page 2: 01 intro php

หลักการท างานของ

• เว็บ หรือ WWW (World Wide Web) เป็นบริการหนึ่งในระบบอินเทอร์เน็ต ที่ท าให้ผู้ใช้ (web client) มีมุมมองของเพจที่เชื่อมต่อกันในลักษณะของโครงข่ายใยแมงมุม โดยเว็บเพจเหล่านั้นอาจจะเก็บอยู่ในเครื่องเดียวกัน หรือคนละเครื่องทั่วโลก

• หลักการท างานของ WWW อาศัยหลกัการของ Client/Server

• โดย Client คือ Web Browser (IE , FireFox , Chrome) • ส่วน Server คือ Web Server (Apache , IIS)

Page 3: 01 intro php

HTTP (HyperText Transfer Protocol)

• เป็นโปรโตคอลส าหรับ WWW (ภาษาท่ี Web Sever และ Web browser คุยกัน)

HTTP Request

HTTP Response

Page 4: 01 intro php

PHP

• ย่อมาจาก PHP: Hypertext Preprocessor• PHP เป็นภาษาคอมพิวเตอร์ที่ท างานบนเครื่องฝั่งเซิร์ฟเวอร์

(Server –Side Scripting Language)• PHP สนับสนุนระบบจัดการฐานข้อมูลหลากหลาย เช่น

(MySQL, Informix, Oracle, Sybase, Solid, PostgreSQL, Generic ODBC, etc.)

• PHP เป็น open source software• PHP ดาวน์โหลดและใช้งานฟรี

Page 5: 01 intro 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

Page 6: 01 intro php

Appserv

• Appserv เป็นซอฟต์แวร์ที่ท าให้สามารถติดตั้งเครื่องมือท่ีจะพัฒนาโปรแกรมด้วย PHP ได้ง่าย โดยรวมเอา Apache , PHP , MySql , PhpMyAdmin เข้าไว้ด้วยกัน

• ดาวน์โหลด Appserv ได้ที่ www.appservnetwork.com

Page 7: 01 intro php

การท างานของ PHP

Page 8: 01 intro php

Basic PHP Syntax• ค าสั่ง PHP เขียนภายในแท็ก <?php …. และจบด้วย ?>• เอกสาร HTML ที่มีการเขียนค าสั่ง PHP อยูด่้วยจะต้องบันทึกชื่อไฟล ์.php

เสมอ• ตัวอย่างการเขียน PHP

• ประโยคของ PHP จบท้ายประโยคด้วยเครื่องหมาย semi colon (;)• ค าสั่งของ PHP เป็น Case-sensitive (ตัวเล็ก-ใหญ่ ต่างกัน)

<html>< body>< ?php

echo "Hello World";?>< /body>< /html>

Page 9: 01 intro php

Comment ใน PHP

• PHP Interpreter จะไม่สนใจคอมเมนต ์ในการตีความหมายและการประมวลผล แมว้่าส่งที่อยู่ในคอมเมนต์จะเป็นโค้ด PHP ก็ตาม

รูปแบบคอมเมนต์ สัญลักษณ์ที่ใช้ ค ำอธิบำย

แบบบรรทดัดียว // หรือ # ข้อความใด ๆ ท่ีอยูห่ลงัเคร่ืองหมายนีจ้นจบบรรทดั จะกลายเป็นคอมเมนต์

แบบหลายบรรทดั /* … */ ข้อความท่ีอยูร่ะหวา่ง /* กบั */ จะกลายเป็นคอมเมนต์

Page 10: 01 intro php

ค าสั่ง echo

• ค าสัง่ echo เป็นค าสั่งที่แสดงข้อมูลบนหน้าเพจ

• รูปแบบ

• ตัวอย่าง

echo “ขอ้ความ” ;

<?phpecho “<h1>Hello World!!!</h>” ;?>

Page 11: 01 intro php

PHP Variables

• ตัวแปร (Variable) คือสิ่งท่ีใช้เก็บค่า(value) หรือข้อมูล(data) ไว้ชัว่คราว เพื่อท่ีจะน าค่านั้นมาใช้งานภายหลัง

• ในภาษา PHP ไม่ต้องการประกาศตัวแปรก่อนใช้งาน แต่สามารถก าหนดค่าให้ตัวแปรได้เลยเมื่อต้องการใช้งาน

• ถ้าตัวแปรทีก่ าหนดค่าให้นั้นยังไม่มีมาก่อน PHP ก็จะสร้างขึ้นมาให้ใหม่ แต่ถ้ามีอยูแ่ล้ว ค่าที่ก าหนดให้ใหมจ่ะไปแทนที่ค่าเดิม

Page 12: 01 intro php

กฎการตั้งชื่อตัวแปร

• ตัวแปร PHP เริ่มต้นด้วยเครื่องหมาย $ และตามด้วยชื่อที่ตั้งขึ้น

• ชื่อตัวแปรขึ้นต้นด้วยตัวอักษร(A-Z , a-z) หรือ เครื่องหมาย _ (underscore) เท่านั้น

• ชื่อตัวแปรสามารถประกอบด้วยตัวอกัษรและตัวเลขปนกันได้• ชื่อตัวแปรหา้มมีช่องว่างภายในชื่อ• ชื่อตัวแปรเป็นแบบ case-sensitive (ตัวอักษรเล็ก-ใหญ่

ต่างกัน)

Page 13: 01 intro php

การประกาศตัวแปรใน 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 />";

?>

Page 14: 01 intro php

การแสดงค่าจากตัวแปรพร้อมกับค่าสตริงในการแสดงค่าจากสตริง (string Literal) จะครอบด้วยเครื่องหมาย (“) หรือ (‘)

ตัวอย่างที่ 1 กรณีแสดงด้วย double quote

ผลลัพธ์

หรือ

Page 15: 01 intro php

การแสดงค่าจากตัวแปรพร้อมกับค่าสตริงในการแสดงค่าจากสตริง (string Literal) จะครอบด้วยเครื่องหมาย (“) หรือ (‘)

ตัวอย่างที่ 2 กรณีแสดงด้วย Single quote

ผลลัพธ์

Page 16: 01 intro php

การแสดงค่าจากตัวแปรพร้อมกับค่าสตริงในการแสดงค่าจากสตริง (string Literal) จะครอบด้วยเครื่องหมาย (“) หรือ (‘)

ตัวอย่างที่ 3 กรณีแสดงค่าจากตัวแปรต่อด้วยข้อความติดกัน

ผลลัพธ์

Page 17: 01 intro php

การแสดงค่าจากตัวแปรพร้อมกับค่าสตริงในการแสดงค่าจากสตริง (string Literal) จะครอบด้วยเครื่องหมาย (“) หรือ (‘)

ตัวอย่างที่ 4 กรณีไม่ต้องการตีความหมายค่าจากตัวแปร ให้ใช้เครื่องหมาย \ ไว้หน้าตัวแปร

ผลลัพธ์

Page 18: 01 intro php

การแสดงค่าจากตัวแปรพร้อมกับค่าสตริงในการแสดงค่าจากสตริง (string Literal) จะครอบด้วยเครื่องหมาย (“) หรือ (‘)

ตัวอย่างที่ 5 กรณีใชเ้ครื่องหมาย double quote ผสมกับ single quote

ผลลัพธ์

Page 19: 01 intro php

Literal

• Literal คือ ค่าที่เขียนหรือก าหนดลงในโค้ดโปรแกรมโดยตรง

• เช่น “Hello” เป็น Literal ชนิดสตรงิ (String Literal)

• เช่น 123 เป็น Literal ชนิดเลขจ านวนเต็ม(Integer Literal)

• เช่น true เป็น Literal ชนิดตรรกะ(Boolean Literal)

Page 20: 01 intro php

ค่าคงที่ (Constant)

• ค่าคงที่ (Constant) คือชื่อที่ก าหนดขึ้นมาให้เก็บค่าข้อมูลหนึ่งๆ ซึ่งไม่สามารถเปลี่ยนแปลงได้

• รูปแบบ

• ตัวอย่าง

define(“ชือ่คา่คงที”่ , “คา่ทีก่ าหนด”);

Page 21: 01 intro php

นิพจน์และตัวด าเนินการ

• นิพจน์ (Expression) หมายถึง ส่วนของโค้ดโปรแกรมที่มีค่า หรือไม่มีค่าก็ตาม

• ดังนั้น ตัวแปร , Literal และ ค่าคงที่ จึงถือว่าเป็นนิพจน์

• นอกจากนี้ยังสามารถสร้างนิพจน์ที่ซับซ้อน โดยน าเอาตัวแปร , Literal และค่าคงท่ีมาด าเนินการกับตัวด าเนินการ(Operator)

• เช่น

$price * 0.07 ;

Page 22: 01 intro php

ตัวด าเนินการ (Operator)• ตัวด าเนินการ (Operator) คือ เคร่ืองหมายหรือสัญลักษณ์ท่ีใช้

ด าเนินการกับค่า แบ่งออกเป็น– ตัวด าเนินการคณิตศาสตร์ (Arithmetic Operator)– ตัวด าเนินการสตริง (String Operator)– ตัวด าเนินการก าหนดค่า (Assignment Operator)– ตัวด าเนินการเพิ่ม/ลดค่า (Incrementing/Decrementing

Operator)– ตัวด าเนินการเปรียบเทียบ (Comparison Operator)– ตัวด าเนินการตรรกศาสตร์ (Logical Operator)– ตัวด าเนินการอาร์เรย์ (Array Operator)

Page 23: 01 intro php

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

Page 24: 01 intro php

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

Page 25: 01 intro php

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

Page 26: 01 intro php

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

Page 27: 01 intro php

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