More Related Content Similar to Dw ch05 basic_php Similar to Dw ch05 basic_php (20) More from Webidea Petchtharat More from Webidea Petchtharat (12) Dw ch05 basic_php1. บทที่ 5
ความรู้พื้นฐานเกี่ยวกับภาษา PHP
การเปิดปิดแท็ก PHP (PHP Code Syntax)
รูปแบบแท็ก
เปิดแท็ก PHP
ปิดแท็ก PHP
แบบมาตรฐาน
<?php
?>
แบบสั้น
<?
?>
แบบ ASP
<%
%>
แบบ Script
<script language="PHP">
</script>
รูปแบบคำสั่ง (PHP Statement)
<HTML>
<BODY>
<?php
echo "Hello, World!!";
?>
</BODY>
</HTML>
ตัวแปร (Variables)
ตัวแปร คือ การเขียนคำสั่งให้โปรแกรม (PHP) จองพื้นที่ในหน่วยความจำ (memory) ไว้ส่วนหนึ่ง เพื่อเก็บข้อมูลบางอย่าง
ตามที่ผู้เขียนโปรแกรมกำหนด
o การประกาศตัวแปร
ƒ การประกาศตัวแปรเริ่มต้นด้วยเครื่องหมาย $ (Dollar sign)
ƒ ชื่อตัวแปรต้องเริ่มต้นด้วยตัวอักษรภาษาอังกฤษหรือเครื่องหมาย underscore ("_")
ƒ ตัวอย่างการประกาศตัวแปรที่ถูกต้อง:
$total
$_cell1
$length_of_string
dulyawat@hotmail.com ความรู้พื้นฐานเกี่ยวกับภาษา PHP 27
2. ƒ ตัวอย่างการประกาศตัวแปรที่ผิด:
total
$1_total
$2_length
o การกำหนดค่าให้ตัวแปร
ƒ กำหนดค่าเป็นตัวเลขจำนวนเต็ม:
<?php
$total = 10;
?>
ƒ กำหนดค่าเป็นตัวเลขทศนิยม:
<?php
$PI = 3.14;
?>
ƒ การกำหนดค่าเป็นข้อความ (string) ให้ใช้ quotes (") หรือ single quote ( ' ):
<?php
$example1 = 'This is a single quoted string';
$example2 = "This is a double quoted string";
?>
ƒ ข้อแตกต่างระหว่าง quotes ( " ) กับ single quote ( ' ) คือ ภายใต้ single quote ( ' ) ตัวแปรไม่สามารถ
แสดงค่าได้:
<php
$total = 10;
$example1 = ' The total is $total ';
$example2 = " The total is $total ";
?>
ผลการกำหนดค่าให้ตัวแปร $example1: "The total is $total"
ผลการกำหนดค่าให้ตัวแปร $example2: "The total is 10"
ƒ การนำข้อความ (string) มาเชื่อมต่อกันโดยใช้จุด "." :
<php
$a = 'apples';
$b = 'bananas';
$c = $a . ' and ' . $b;
?>
ผลการกำหนดค่าให้ตัวแปร $c: "apples and bananas"
dulyawat@hotmail.com ความรู้พื้นฐานเกี่ยวกับภาษา PHP 28
3. ƒ การนำข้อความ (string) มาเชื่อมต่อกันโดยใช้ ".=" :
<php
$a = 'apples';
$a .= ' and bananas';
?>
ผลการกำหนดค่าให้ตัวแปร $a: "apples and bananas"
อักขระต้องห้าม (Escape Characters)
ตัวอักขระต้องห้าม (Escape Characters) คือตัวอักษรที่ตัวแปรภาษาไม่สามารถดำเนินการประมวลผลได้
เนื่องจากจะซ้ำกับกฏ หรือ คำบังคับของภาษา ดังนั้นต้องหลีกเลี่ยงโดยการใช้เครื่องหมายบางอย่างไปกำกับไว้ ใน
ภาษา PHP จะใช้ Back Slash ( ) ไปเขียนกำกับไว้ข้างหน้าตัวอักขระต้องห้าม
Character
Escaped Character
Description
ไม่มี
n
Adds a linefeed
ไม่มี
r
Adds a carriage return
ไม่มี
t
Adds a tab
Back Slash
$
$
Dollar Sign
"
"
Double Quote
o การแสดงผลเครื่องหมาย Double Quote ( " )
<?php echo " " "; ?>
o การแสดงผลเครื่องหมาย Dollar Sign ( ? )
<?php echo " ? "; ?>
o การแสดงผลเครื่องหมาย Back Slash ( )
<?php echo " "; ?>
dulyawat@hotmail.com ความรู้พื้นฐานเกี่ยวกับภาษา PHP 29
4. อาร์เรย์ (Arrays)
o อาร์เรย์ คือ ตัวแปรชนิดหนึ่งที่สามารถเก็บข้อมูลได้หลายค่าในเวลาเดียวกัน โดยเก็บข้อมูลในลักษณะคู่ลำดับ
ƒ การสร้างอาร์เรย์ทำได้ 2 วิธีการ
• การสร้างอาร์เรย์โดยใช้ฟังก์ชั่น array()
<?php
$personInfo = array( "cid" => "1296857369124" , "firstname" => "Dulyawat" , "lastname" => "Mapong" , "age" => 30 );
?>
• การสร้างอาร์เรย์โดยวิธีการกำหนดค่าแบบ Dynamic
<?php $personInfo["cid"] = "1296857369124"; $personInfo["firstname"] = "Dulyawat"; $personInfo["lastname"] = "Mapong"; $personInfo["age"] = 30;
?>
ƒ อาร์เรย์เก็บข้อมูลในลักษณะเป็นคู่ลำดับ โดยข้อมูลที่เก็บในอาร์เรย์แต่ละค่า ประกอบด้วย
คีย์ (Key) เป็นตัวชี้ตำแหน่ง และข้อมูลที่เก็บ (Value)
คีย์ (Key) ค่า (Value)
cid 1296857369124
firstname Dulyawat
lastname Mapong
age 30
ƒ การแสดงค่าจากอาร์เรย์ ใช้คำสั่ง echo และระบุชื่อของอาร์เรย์พร้อมทั้งชื่อคัย์ (Key) ของอาร์เรย์:
<?php
echo "หมายเลข CID : " . $personInfo["cid"] . "<BR>";
echo "ชื่อ : " . $personInfo["firstname"] . "<BR>";
echo "นามสกุล : " . $personInfo["lastname"] . "<BR>";
echo "อายุ : " . $personInfo["age"] . "<BR>";
?>
ผลลัพธ์:
หมายเลข CID : 1296857369124
ชื่อ : Dulyawat
นามสกุล : Mapong
อายุ : 30
dulyawat@hotmail.com ความรู้พื้นฐานเกี่ยวกับภาษา PHP 30
5. คำสั่งควบคุม (Control Structures)
o
if
if ($apples > $bananas) echo "You have more apples than bananas!";
o
if … else
if ($apples > $bananas) echo "You have more apples than bananas!"; else if ($apples == $bananas) echo "You have apples less than or equal to bananas!";
o
if … else if … else if ($apples > $bananas) echo "You have more apples than bananas!"; else if ($apples == $bananas) echo "You have apples equal to bananas!"; else echo "You have less apples than bananas!";
ตัวดำเนินการ (Operators)
Operator
ความหมาย
==
เท่ากับ (Equal to)
!=
ไม่เท่ากับ (Not equal to)
<>
ไม่เท่ากับ (Not equal to)
<
น้อยกว่า (Less than)
>
มากกว่า (Greater than)
<=
น้อยกว่าหรือเท่ากับ (Less than or equal to)
>=
มากกว่าหรือเท่ากับ (Greater than or equal to)
การใช้คำสั่งควบคุมและตัวดำเนินการ (Control Structures and Operators)
if ($apples > $bananas)
{
echo "You have more apples than bananas, so I'm taking away your bananas!";
$bananas = 0;
}
dulyawat@hotmail.com ความรู้พื้นฐานเกี่ยวกับภาษา PHP 31
6. การวนลูปแบบ for (for Loop)
o การใช้ fore สำหรับการวนลูปค่าทั้งหมดอาร์เรย์
<?php
//สร้างอาร์เรย์ชื่อ $arrayAmpur โดยใช้ฟังก์ชั่น array()
$arrayAmpur = array( "เมื่อง" , "บางกรวย" , "บางใหญ่" );
for ( $i = 0; $i < count($arrayAmpur); $i ++)
{
echo " $i : " . $arrayAmpur[$i] . "<BR>";
}
?>
ผลลัพธ์:
0 : เมื่อง
1 : บางกรวย
2 : บางใหญ่
การวนลูปแบบ foreach (foreach Loop)
o การใช้ foreach สำหรับการวนลูปค่าทั้งหมดอาร์เรย์
<?php
//สร้างอาร์เรย์ชื่อ $arrayAmpur โดยใช้ฟังก์ชั่น array()
$arrayAmpur = array( "1201" => "เมื่อง" , "1202" => "บางกรวย" );
foreach ( $arrayAmpur as $kAmpur => $vAmpur)
{
echo " $kAmpur : $vAmpur <BR>";
}
?>
ผลลัพธ์:
1201 : เมื่อง
1202 : บางกรวย
การวนลูปแบบ while (while Loop)
o การใช้ while สำหรับการวนลูปค่าทั้งหมดจากตาราง employees ของฐานข้อมูลชื่อ "compasstravel"
<?php
//การติดต่อฐานข้อมูล กำหนดให้ connection ชื่อ $dbconn
$dbconn = mysql_connect("localhost" , "root" , "rootpass");
//การเลือกใช้งานฐานข้อมูลชื่อ "compasstravel" โดยติดต่อผ่าน connection ชื่อ $dbconn
dulyawat@hotmail.com ความรู้พื้นฐานเกี่ยวกับภาษา PHP 32
7. mysql_select_db("compasstravel" , $dbconn);
//ประมวลผลคำสั่ง SQL ผลลัพธ์ที่ได้เก็บในตัวแปร $rsEmp โดยติดต่อผ่าน connection ชื่อ $dbconn
$rsEmp = mysql_query("SELECT * FROM employees" , $dbconn);
while ( $row_rsEmp = mysql_fetch_array($rsEmp) ) //เริ่มต้นวนลูป while
{
echo "Employee ID: " . $row_rsEmp['employeeid'] . "<BR>";
echo "First Name: " . $row_rsEmp['firstname'] . "<BR>";
echo "Last Name: " . $row_rsEmp['lastname'] . "<BR>";
} //จบการวนลูป while
//ปิดการติดต่อฐานข้อมูลชื่อ $dbconn
mysql_close($dbconn);
?>
ผลลัพธ์:
Employee ID: 26 First Name: David Last Name: Beckham
ฟังก์ชั่น (Functions)
o ฟังก์ชั่นของ PHP (PHP Built-In Functions)
echo() เช่น echo(" Hello, World ")
print() เช่น print(" Hello, World ")
date() เช่น date("Y-m-d H:i:s")
substr() เช่น substr("ABCDEF" , 0 , 4)
strlen() เช่น strlen("ABCDEFGH")
strpos() เช่น strpos("ABCDEFGHI" , "DE")
strtoupper() เช่น strtolower("AbCdEfGh")
strtolower() เช่น strtolower("AbCdEfGh")
trim() เช่น trim(" A B C ")
explode() เช่น explode("|" , "ABC|DEF|GHI")
list() เช่น list($a , $b , $c) = explode("|" , "ABC|DEF|GHI")
dulyawat@hotmail.com ความรู้พื้นฐานเกี่ยวกับภาษา PHP 33
8. o ฟังก์ชั่นที่สร้างขึ้นเอง (PHP User-Defined Functions)
ƒ รูปแบบการประกาศฟังก์ชั่น
function function_name ( argument )
{
statement;
.....
}
ƒ ฟังก์ชั่นสำหรับแปลงข้อมูลวันเดือนปี จากรูปแบบมาตรฐาน YYYY-MM-DD (ปี ค.ศ.)
<?php
function thaidate($vardate) //เริ่มต้นการประกาศฟังก์ชั่น
{
$arrayDate = explode("-", $vardate);
list($yearno, $monthno, $dayno) = $arrayDate;
$temp = $dayno . "/" . $monthno . "/" . ($yearno+543);
return $temp;
} //สิ้นสุดการประกาศฟังก์ชั่น
?>
ฟังก์ชั่นนี้สามารถเรียกใช้ได้จากที่ใดๆ ในไฟล์ PHP ที่ประกาศฟังก์ชั่น thaidate() ไว้
<?php
//ข้อมูล YYYY-MM-DD ที่จะป้อนให้ฟังก์ชั่น
$birthdate = "1971-05-20";
//เรียกใช้ฟังก์ชั่น ให้แปลงข้อมูลรูปแบบ DD/MM/YYYY (ปี พ.ศ.) จะได้ผลลัพธ์ 20/05/2514
echo thaidate($birthdate); ?>
ƒ ฟังก์ชั่นสำหรับเรียกค้นหาข้อมูลชื่อแผนก
<?php
function GetDept($deptid) //เริ่มต้นการประกาศฟังก์ชั่น
//การติดต่อฐานข้อมูล กำหนดให้ connection ชื่อ $dbconn
$dbconn = mysql_connect("localhost" , "root" , "rootpass");
//การเลือกใช้งานฐานข้อมูลชื่อ "compasstravel" ผ่าน connection ชื่อ $dbconn
mysql_select_db("compasstravel" , $dbconn);
dulyawat@hotmail.com ความรู้พื้นฐานเกี่ยวกับภาษา PHP 34
9. dulyawat@hotmail.com ความรู้พื้นฐานเกี่ยวกับภาษา PHP 35
//ประมวลผลคำสั่ง SQL ผลลัพธ์ที่ได้เก็บในตัวแปร $rsDep ผ่าน connection ชื่อ $dbconn
$rsDep = mysql_query("SELECT * FROM departments WHERE deptid=$deptid ",$dbconn);
$row_rsDep = mysql_fetch_array($rsDep);
if ( $row_rsDep && ( mysql_num_rows($row_rsDep) > 0 ) ) {
$temp = $row_rsDep['deptname'];
} //end If
//ปิดการติดต่อฐานข้อมูลชื่อ $dbconn
mysql_close($dbconn);
return $temp; //ส่งค่าออกจากฟังก์ชั่น
} //สิ้นสุดการประกาศฟังก์ชั่น
?>
ฟังก์ชั่นนี้สามารถเรียกใช้ได้จากที่ใดๆ ในไฟล์ PHP ที่ประกาศฟังก์ชั่น GetDept() ไว้
<?php
//ข้อมูลรหัสแผนกปัจจุบัน
$current_deptid = "7";
//เรียกใช้ฟังก์ชั่น ให้แสดงชื่อแผนก โดยส่งค่าพารามิเตอร์ $current_deptid ให้ฟังก์ชั่น
echo GetDept($current_deptid); ?>