วันเสาร์ที่ 18 เมษายน พ.ศ. 2552

PHP + Database [mysql]

php สามารถติดต่อผ่านฐานข้อมูลโดยใช่ คำสั่ง
mysql_connect ครับ
ง่าย มากๆ
การใช้งาน mysql_connect("host","username","password");

ส่วน host ค่า default จะเป็น localhost นะครับ ถ้า database และ web server อยู่ในเครื่องเดียวกัน
username ค่า default จะเป็น root ครับ ถ้า root ไม่ได้ไปสร้าง user ขึ้นอีก
password จะเป็น password ที่เราใส่ในหัวข้อ install appserv ครับ

คำสั่งของผมจะเป็น mysql_connect("localhost","root","123456")or die("ติดต่อฐานข้อมูลไม่ได้");

ปล คำสั่ง or die จะทำงานเมื่อ คำสั่งที่อยู่ข้างหน้าทำไม่ได้ครับ เป็นเท็จนั่นเอง

วันอังคารที่ 7 เมษายน พ.ศ. 2552

จัดการไฟล์ ใน PHP

คำสั่งที่ใช้จัดการไฟล์ใน php มีประมาณนี้นะครับ เอาที่สำคัญและใช้บ่อย


fopen() เอาไว้เปิดไฟล์ครับ

fread() เอาไว้อ่านไฟล์

fwrite() เอาไวเขียนไฟล์ครับ

fclose() เอาไว้ปิดไฟล์ที่เปิดขึ้นเพื่อคืนหน่วยความจำให้ระบบครับ


มาดูตัวอย่างการใช้ fopen กัน


<?php

$handle = fopen("c:\\data\\info.txt", "r");

?>


r คือ parameter ที่เอากำกับการเปิดไฟล์ครับ r คือ อ่านอย่างเดียว

มี parameter ให้ดูครับ

r เปิดเพื่ออ่านอย่างเดียว

r+ เปิดเพื่ออ่านและเขียนไฟล์

w เปิดเพื่อเขียนไฟล์ โดยเนื้อหาทั้งหมดของไฟล์จะถูกลบทิ้งไป

w+ เปิดเพื่ออ่านและเขียนไฟล์ โดยเนื้อหาทั้งหมดจะถูกลบทิ้ง

a เปิดเพื่อเขียนต่อท้ายไฟล์

a+ เปิดเพื่ออ่านและเขียนต่อท้ายไฟล์


fread($open,”ขนาดไฟล์”); เขียนไฟล์

ตัวอย่างการใช้งานครับ

<?php

// path ของไฟล์เป็น string ครับ

$filename = "/usr/local/something.txt";

$handle = fopen($filename, "r");

$contents = fread($handle, filesize($filename));

echo”$ contents ”;

fclose($handle);

?>


fwrite($open,”ข้อมูลที่จะเขียน”);

ตัวอย่างการใช้งานครับ

<?php

$fp = fopen('data.txt', 'w');

fwrite($fp, '23');

fclose($fp);

//ข้อมูลในไฟล์จะเป็น 23 ครับ

?>


**ไฟล์ที่ได้จะอยู่ใน Directory เดียวกันกับไฟล์ script ครับ

** ถ้าไม่มีไฟล์ data.txt PHP จะสร้างขึ้นมาใหม่ครับ


จบแล้วนะครับสำหรับการจัดการไฟล์เบื้องต้น ต่อไปคงเป็นเรื่อง ฐานข้อมูล ซะที

จัดการ Directory ใน PHP

php สามารถอ่านไดเรคทอรี่ Directory ว่ามีไฟล์อะไรบ้าง และสามารถลบแ้ก้ไขไฟล์นั้นได้ด้วย คำสั่งที่ใช้ในการอ่านไฟล์ใน Directory ประกอบด้วย
- open_dir เปิด Directory
- read_dir อ่าน Directory ที่ open_dir ว่ามีไฟล์อะไรบ้าง
- close_dir ปิด open_dir เพื่อคืนหน่่วยความจำให้ระบบ

ตัวอย่างการใช้งาน

// Note that !== did not exist until 4.0.0-RC2

if ($handle = opendir('/path/to/files')) { // path ที่ต้องการอ่านไฟล์ในที่จะอ่านในโฟรเดร์ files
echo
"Directory handle: $handle\n";
echo
"Files:\n";

/* This is the correct way to loop over the directory. */
while (false !== ($file = readdir($handle))) {
echo
"$file\n";
}

/* This is the WRONG way to loop over the directory. */
while ($file = readdir($handle)) {
echo
"$file\n";
}

closedir($handle);
}
?>

วันจันทร์ที่ 6 เมษายน พ.ศ. 2552

Array in PHP

การใช้งาน Array ใน PHP



วิธีการกำหนดค่าตัวแปรอาเรย์ ใน PHP



$text=array(“a”,”b”,”c”);


การแสดงค่าตัวแปร array ใน PHP



<?

echo $array[0]; // key 0 จะได้ ค่า a

?>




ทำไม่ key ต้องเป็น 0 เพราะตัวแปรใน array จะเริ่มจาก index ที่ 0 เป็นค่า default


ทำอย่างไรจึงจะแสดงผลได้ทั้งหมด การแสดงผล array ทั้งหมดต้องใช้การวนลูปครับ

<?

$text=array(“a”,”b”,”c”);

for($i=0;$i<count($text);$i++){

echo $text[$i].”<br>”;

}//end for

?>


ผลที่ได้



a

b

c



foreach เป็นอีกคำสั่งที่ใช้ในการแสดงผล array ครับ

วิธีการเขียนอีกแบบโดยใช้ Loop แบบ foreach



<?

$text=array(“a”,”b”,”c”);

foreach($text as $value){

$n++;

echo $text[$i].”<br>”;

}

?>




ผลที่ได้



a

b

c


ได้ผลลัพธ์เหมือนกันครับ







Array 2 มิติ คือการเก็บข้อมูลแบบ อาเรย์ แต่เพิ่ม slot กาเก็บข้อมูลเข้าไปอีกเพื่อประโยชน์ในการเก็บข้อมูลแบบซับซ้อนนะครับ เช่น เราต้องการเก็บรายชื่อนักเรียนของโรงเรียนแห่งหนึ่งนะครับ

ห้อง 0 มีนักเรียน นายดำ นายแดง นายเขียว

ห้อง 1 มีนักเรียน นายฟ้า นายม่วง นายส้ม

ห้อง 2 มีนักเรียน นายชมพู นายน้ำเงิน นายเหลือง



ลักษณะการเขียนโค้ดนะครับ

$room[0][0] =”นายดำ”;

$room[0][1]=”นายแดง”;

$room[0][2]=”นายเขียว”;



$room[1][0] =”นายฟ้า”;

$room[1][1]=”นายม่วง”;

$room[1][2]=”นายส้ม”;



$room[2][0] =”นายชมพู”;

$room[2][1]=”นายน้ำเงิน”;

$room[2][2]=”นายเหลือง”;



ลักษณะเขียนโค้ดวนลูปเพื่อแสดงผลครับ ใช้ for ละกัน



for($i=0;$i<count($room);$i++){ //count คือ คำสั่งนับจำนวนสมาชิกในArray นั้นครับ บรรทัดนี้คือนับจำนวนห้อง ช 3 ครับ

for($a=0;$a<count($room[$i]);$a++){ //บรรทัดนี้นับ $room[0] เท่ากับ 3 อีกเช่นกันครับ

echo"นักเรียนห้อง $i". $room[$i][$a] ;

}

echo"<br>"; //หลังจากพิมพ์รายชื่อนักเรียนเสร็จพิมพ์เว้นบรรทัดแทรกระหว่างแต่ละห้องครับ

}




ตัวอย่างง่ายๆ นะครับ ทำไม $i ต้อง =0 เพราะว่า key ของอาเรย์เริ่มต้นที่ 0 ครับค่า default = 0 ถ้าไม่ต้องการให้เป็น 0 ก็ $arr[1]="ค่า"; ก็ได้ครับ



Date & Time in PHP


ฟังก์ชั่น Date() ถูกใช้จัดรูปแบบเวลา หรือวันที่ จากค่า Timestamp ซึ่มี syntax ดังนี้
date(format,timestamp)
format คือ การระบุรูปแบบจาก timestamp เพื่อแสดงข้อมูลออกมา
timestamp คือ ค่าตัวเลขของจำนวนวินาที เริ่มตั้งแต่วันที่ 1 มกราคม ค.ศ. 1970 เวลา 00:00:00 น. ถ้าไม่ระบุจะเป็นค่าเวลาปัจจุบัน
รูปแบบของ Date()ค่าแรกของฟังก์ชั่น date() มีรูปแบบต่างๆ มากมาย เราจะแสดงให้ดูตัวอย่างบางตัว:
d คือ แสดงวันของเเดือน มีค่า 01-31
m คือ แสดงเดือน มีค่า 01-12
Y คือ แสดงปี มีค่าเป็น ค.ศ. 4 หลัก
ค่าในรูปแบบต่างๆ สามารถดูได้จาก php date functionส่วนตัวอักขระ เช่น "/" , "." , "-" สามารถจะเพิ่มเข้าไประหว่างตัวอักษรของรูปแบบเวลาได้

ค่าที่ได้จะเป็น
2006/07/11
2006.07.11
2006-07-11
การสร้าง timestampการสร้าง timestamp เป็นเวลาปัจจุบันจะใช้ฟังก์ชั่น time() จะได้ค่าตัวเลข 10 หลักแบบนี้ 1239027959 ซึ่งถ้าเราไม่ใส่ค่า timestamp จะได้ค่าเดียวกันกับ time()ค่า timestamp เป็นค่าที่จะใส่หรือไม่ก็ได้ในฟังก์ชั่น date() ถ้าไม่ใส่จะเป็นเวลาปัจจุบัน แต่ถ้าเราต้องการระบุเวลาที่แน่นอนล่ะ จะต้องใช้ฟังก์ชั่น mktime() โดยมี syntax ดังนี้:
mktime(hour,minute,second,month,day,year)
ตัวอย่างถ้าเราต้องการให้แสดงวันที่ อีก 2 วันข้างหน้าจะเขียนดังนี้

ค่าที่ได้จะเป็น
วันอีก 2 วันข้างหน้า คือ 08/04/2009

ขอบคุณข้อมูลดีดีจาก http://www.phpstreet.com/tutorials/php/php_date.php


การสร้าง DateTime object$dt = new DateTime("2008-08-01 18:10");
สามารถสร้างโดยกำหนด string ของ datetime ตอน construct มันได้เลย ซึ่งมันจะใช้ timezone แบบเดียวกับค่าปริยายของเซิร์ฟเวอร์ เช่น ถ้าเซิร์ฟเวอร์ตั้งอยู่ประเทศไทย ก็จะใช้ timezone เป็น ICT หรือ GMT+0700 หรือถ้าต้องการระบุ timezone เป็นที่อื่น ก็สั่งแบบนี้
$dt1 = new DateTime("2008-08-01 18:10 UTC");
$dt2 = new DateTime("2008-08-05 13:00+09:00");ถ้าไม่ระบุค่า string จะได้ค่าวันที่และเวลาปัจจุบัน สมมติ $d คือ

เวลาเป็น unix timestamp ได้จากฐานข้อมูล ถ้าจะตั้งเวลาให้กับ DateTime ก็ทำได้โดย
$dt3 = new DateTime(strftime("%D %T",$d));
การแปลงเป็น stringเวลาจะเอาไปใช้งาน ก็ต้องแปลงเป็น string ก่อน เช่น เอาไปแสดงผล หรือแปลงไปเป็น unix timestamp เพื่อเอาไปเก็บลง
ฐานข้อมูล หรืออื่นๆ ต่อไป โดย format string ที่ใช้ สามารถดูได้ที่ http://php.net/date

echo $dt->format("l dS of F Y H:i:s")."\n";
$d = $dt->format("U");
echo strftime("%c",$d)."\n";
การตั้งค่า timezoneต้องใช้ TimeZone object ซึ่งใช้แบบง่ายๆ ดังนี้
echo $dt->format("l dS of F Y H:i:s")."\n";
$d = $dt->format("U");
echo strftime("%c",$d)."\n";โดยชื่อ timezone สามารถดูได้จาก http://php.net/timezones ทีนี้เวลาพิมพ์ค่าวันที่ออกมาโดยใช้ method format() ก็จะได้วันเวลาตาม timezone ที่ตั้งไว้
การเปลี่ยนค่าวันที่/เวลา
$dt->setDate(2006,12,31);เปลี่ยนวันที่เป็น 2006-12-31 เวลาคงเดิม
$dt->setTime(12,30,00);เปลี่ยนเวลาเป็น 12:30 โดยวันที่เป็นวันเดิม
$dt->modify("+1 week 2 days 4 hours 2 seconds");เปลี่ยนวันเวลาโดยอ้างอิงกับค่าเดิม ซึ่งรูปแบบ string ให้ใช้แบบเดียวกับ

ฟังก์ชัน strtotime()
การหาผลต่างของวันและเวลาก็คล้ายกับที่คุณ roteee ได้เขียนไว้ โดยต้องแปลงเป็นวินาที (unix time stamp) ก่อน แล้วเอามาลบกัน แล้วหารออกมาเป็นวัน-ชั่วโมง-นาที-วินาที
$dt1 = new DateTime("2007-08-01 18:00:00");
$dt2 = new DateTime();
$dt = $dt2->format("U") - $dt1->format("U");
$d = (int) ($dt / (24*60*60));
$x = $dt % (24*60*60);
$h = (int) ($x / (60*60));
$x = $x % (60*60);
$m = (int) ($x / 60);
$s = $x % 60;

echo $d." days ".$h." hours ".$m." minutes ".$s." secondsn";
ปัญหาของ DateTime objectปัญหาคือ ตรง format() มันยังไม่สนับสนุนการใช้ locale น่ะสิครับ ทำให้ยังไม่สามารถแสดงวันที่แบบท้องถิ่นของประเทศต่างๆ เช่นประเทศไทยได้ ซึ่งจะต่างจากการใช้ strftime() ที่จะใช้ตาม locale ที่ตั้งใน setlocale() ถ้าทำได้ ก็จะสะดวกขึ้นอีกมาก ตอนนี้ต้องใช้วิธีแปลง DateTime เป็น unix time stamp แล้วใช้ strftime() แปลงเป็น string อีกที ดังตัวอย่างนี้
setlocale(LC_TIME, 'ja_JP');

ปล. เดี่ยวจะอธิบายเรื่อง Object Class อีกอย่างระเอียดนะครับ
date_default_timezone_set('Asia/Tokyo');
$dt = new DateTime();
echo strftime("%c\n",$dt->format('U'));
ผลลัพธ์ 2007年08月09日 00時56分54秒ถ้าภาษาไทยก็ใช้ setlocale(LC_TIME, 'th_TH'); และ date_default_timezone_set('Asia/Bangkok'); จะได้ผลลัพธ์เป็น พ. 8 ส.ค. 2550, 23:00:59

ขอคุณข้อมูลดีดีจาก http://www.phpzealots.com/node/71

วันอาทิตย์ที่ 5 เมษายน พ.ศ. 2552

PHP operator

operator คืออะไร
operator คือตัวดำเนินการทางตรรกะครับ
operator มีประโยชน์อย่างไร operator เอาไว้ทำให้ อัลกอลิทึม ของโปรแกรมเป็นไปตามต้องการครับ ตัวอย่าง operator หรือ ตัวดำเนินการของภาษา PHP มีดังนี้ครับ


1. ตัวดำเนินการทางคณิตศาสตร์ (Arithmatic Operators)การบวก รูปแบบการใช้งาน เช่น $a + $b หมายถึง การหาผลรวมของ $a กับ $bการลบ รูปแบบการใช้งาน เช่น $a - $b หมายถึง การหาผลต่างของ $a กับ $bการคูณ รูปแบบการใช้งาน เช่น $a * $b หมายถึง การหาผลคูณของ $a กับ $bการหาร รูปแบบการใช้งาน เช่น $a / $b หมายถึง การหาผลการหารของ $a กับ $bการหารเอาเศษ รูปแบบการใช้งาน เช่น $a % $b หมายถึง การหาเศษผลการหารของ $a กับ $b

2. ตัวดำเนินการเพิ่มค่า/ลดค่า (Increment / Decrement Operators)Pe-increment รูปแบบการใช้งาน เช่น ++$a หมายถึง การเพิ่มค่า 1 ก่อนแล้วค่อยให้ค่ากับตัวแปรPost-increment รูปแบบการใช้งาน เช่น $a++ หมายถึง การให้ค่ากับตัวแปรก่อน แล้วค่อยเพิ่มค่า 1Pe-decrement รูปแบบการใช้งาน เช่น --$a หมายถึง การลดค่า 1 ก่อนแล้วค่อยให้ค่ากับตัวแปรPost-decrement รูปแบบการใช้งาน เช่น $a-- หมายถึง ให้ค่ากับตัวแปรก่อน แล้วค่อยลดค่า 1

3. ตัวดำเนินการตรรกศาสตร์ (Logical Operators)and รูปแบบการใช้งาน เช่น $a and $b หมายถึง เป็นจริงเมื่อทั้ง $a และ $b เป็นจริงand รูปแบบการใช้งาน เช่น $a && $b หมายถึง เป็นจริงเมื่อทั้ง $a และ $b เป็นจริงor รูปแบบการใช้งาน เช่น $a or $b หมายถึง เป็นจริงเมื่อ $a หรือ $b เป็นจริงor รูปแบบการใช้งาน เช่น $a $b หมายถึง เป็นจริงเมื่อ $a หรือ $b เป็นจริงExclusive or รูปแบบการใช้งาน เช่น $a xor $b หมายถึง เป็นจริงเมื่อ $a และ $b ตัวใดตัวหนึ่งเป็นจริงnot รูปแบบการใช้งาน เช่น !$a หมายถึง เป็นจริงเมื่อ $a เป็นเท็จ

ตัวดำเนินการด้านการเปรียบเทียบ
== เท่ากับ เป็นจริงก็ต่อเมื่อ ซ้ายเท่ากับขวา
!= ไม่เท่ากับ เป็นจริงก็ต่อเมื่อ ซ้ายไม่เท่ากับขวา
=== เท่ากับ เป็นจริงก็ต่อเมื่อ ซ้ายเท่ากับขวาและชนิดของข้อมูลต้องเหมือนกัน
> มากกว่า เป็นจริงก็ต่อเมื่อ ซ้ายมากกว่าขวา
>= มากกว่าหรือเท่ากับ เป็นจริงก็ต่อเมื่อ ซ้ายมากกว่าหรือเท่ากับขวา
< น้อยกว่า เป็นจริงก็ต่อเมื่อ ซ้ายน้อยกว่าขวา <= น้อยกว่าหรือเท่ากับ เป็นจริงก็ต่อเมื่อ ซ้ายน้อยกว่าหรือเท่ากับขวา ตัวดำเนินการด้านการตรรกศาสตร์
หรือ เป็นจริงก็ต่อเมื่อซ้ายหรือขวาเป็นจริง
or หรือ เป็นจริงก็ต่อเมื่อซ้ายหรือขวาเป็นจริง
&& และ เป็นจริงก็ต่อเมื่อซ้ายและขวาเป็นจริง
and และ เป็นจริงก็ต่อเมื่อซ้ายและขวาเป็นจริง
! ไม่ เป็นจริงก็ต่อเมื่อค่าตรงกันข้าม


โครงสร้างควบคุม
โครงสร้างควบคุม คือ โครงสร้างภายใน PHP ที่ใช้ควบคุมการทำงานต่างๆ โดยสามารถจัดกลุ่มเป็น
-โครงสร้างเงื่อนไข ( เช่น if)
-โครงสร้างวนรอบ หรือ loop ( เช่น while)
ถ้าต้องการตอบสนองกับข้อมูล บางทีคำสั่งจำเป็นต้องตัดสินใจด้วยเงื่อนไข (Conditional) บางอย่าง เพื่อบอกโปรแกรมให้ตัดสินใจ
เริ่มด้วย อะไรดี อืม… เอา ฟังชั่น IF ก่อนแล้วกัน ง่ายดี
Function IF คืออะไร??
ฟังชั่น IF ก็คือ ฟังชั่นที่ใช้ในการ ตัดสินใจ..งงป่ะ -*- งั้นอธิบายเพิ่มอีกหน่อย มันคือ การ เลือกกระทำ แบบ จริง หรือเท็จ ถ้า จริง ให้ ทำอย่างนี้ ถ้า เท็จ ให้ทำอีกอย่างหนึ่ง
อืม น่าจะ พอเข้าใจกันบ้างแล้วนะ งั้นเราไปดู ลักษณะการทำงานกันดีกว่า…
if ใช้ในการตัดสินใจ โดยต้องกำหนดเงื่อนไขกับประโยคคำสั่ง ถ้าเงื่อนไขเป็นจริง กลุ่มคำสั่ง (block code) จะได้รับการประมวลผล
เงื่อนไขในประโยคคำสั่ง if ต้องอยู่ในวงเล็บ ตัวอย่างเช่น
if ($total > 50) {
echo “ท่านได้ใส่จำนวนเกิน 50″;
} else {
echo “ท่านได้ใส่จำนวนต่ำกว่า 50″;
}
จากตัวอย่างข้างบน จะสรุปได้ว่า if($total>50) คือ ถ้า ตัวแปร total น้อยกว่า 50 ให้แสดงผลคำว่า “ท่านได้ใส่จำนวนเกิน 50″ ถ้าเป็นเท็จ ให้แสดงผลคำว่า “ท่านได้ใส่จำนวนต่ำกว่า 50″ ซึ่ง ชุดของคำสั่งจะเป็นแบบนี้นะ

if แปล ตามตัวคือ ถ้า
สมมุติว่าเราต้องการให้ user ทำการล็อกอินก่อนถึงจะใช้งานเว็บของเราได้นะครับ เราก็จะเขียน operation ได้ดังนี้
if(สถานะ user != "login"){
เข้าระบบไม่ได้
}else if(สถานะ user =="login"){
เข้าระบบได้
}

เขียนเป็นโค้ดนะครับ
if($userStatus!="login"){
echo"เข้าระบบไม่ได้";
}else if($userStatus=="login"){
echo"เข้าระบบได้";
}

if (เงื่อนไข) {
คำสั่งที่จะกระทำเมื่อเป็นจริง
} else {
คำสั่งที่จะกระทำเมื่อเป็นเท็จ
}
เป็นไงบ้าง ง่ายใช่ไไหมหละ งั้น แป้งก็จบ เรื่อง IF ไว้แค่นี้ก่อนนะ ไปดู เรื่องอื่นต่อเลย..


While loop คืออะไร??
Loop ง่ายที่สุดของ PHP คือ while loop ซึ่งเหมือนกับประโยคคำสั่ง if ที่ขึ้นกับเงื่อนไขความแตกต่างระหว่าง while loop กับประโยคคำสั่ง if คือ ประโยคคำสั่ง if ประมวลผลกลุ่มคำสั่งเพียงครั้งเดียวถ้าเงื่อนไขเป็นจริง
while loop ประมวลผลกลุ่มคำสั่งซ้ำตราบเท่าที่เงื่อนไขเป็นจริง โดยทั่วไป while loop ใช้ เมื่อ ไม่ทราบจำนวนรอบประมวลผล
ลักษณะการทำงาน..ไวยากรณ์พื้นฐานของ while loop คือ
while (เงื่อนไข) {
คำสั่งที่จะกระทำเมื่อเป็นจริง
}
ตัวอย่าง while loop แสดงหมายเลข จาก 1 ถึง 5
$num = 1;
while ($num <= 5) { echo $num.” ”;$num++; } $num = 1; (จุดเริ่มต้นของแต่ละรอบ) คือ การทดสอบเงื่อนไข ถ้าเป็นจริงก็จะทำต่อไปเรื่อยๆ จนกว่าเงื่อนไขจะเป็นเท็จก็จะจบการทำงานค่ะอะ ไปเรื่องต่อไปเลยดีกว่า รีบๆ…(ก็นู๋หิว T^T) for loop คืออะไร??
มีหน้าที่ เหมือน While loop ทุกประการเลย -*- แต่ มันแตกต่างกันตรงที่ วิธีการเขียน ซึ่ง ลักษณะการเขียนของ For loop มีดังนี้..
for loop คืออะไร??
มีหน้าที่ เหมือน While loop ทุกประการเลย -*- แต่ มันแตกต่างกันตรงที่ วิธีการเขียน ซึ่ง ลักษณะการเขียนของ For loop มีดังนี้..
for (กำหนดค่าเริ่มต้น; เงื่อนไข; เปลี่ยนแปลงค่าเริ่มต้น) {
คำสั่งที่จะกระทำเมื่อเป็นจริง;
}
กำหนดค่าเริ่มต้น: คือการกำหนดค่าเริ่มต้นการทำงาน เช่น $i = 0
เงื่อนไข: ซึ่งก่อนเริ่มแต่ละรอบจะทดสอบเงื่อนไขเสมอ ถ้าเป็นเท็จจะเป็นการสิ้นสุดรอบการทำงาน เช่น $i < 5
เปลี่ยนแปลงค่าเริ่มต้น: ทำการปรับปรุงค่าเริ่มต้น เช่น $i++
ตัวอย่างเช่น
for ($i = 0; $i< 5; $i++){
echo “แป้งน่ารัก”;
}
เมื่อเปรียบเทียบ while loop กับ for loop ในการทำงานแบบเดียวกัน for loop จะมีความกะทัดรัดมากกว่า
อะ ก็จบไปแล้ว ทั้ง IF, While, For เย้..ได้ไปกินข้าวละ อ๊ะ
เด๋วก่อน..ไหนๆ ก็ไหนๆ ละ แป้ง จะแถมเรื่องการออกจากเงื่อนไข loop ก่อนไปกินข้าวละกัน*0*มาดูกันเลย…
การออกจากโครงสร้างควบคุม
ถ้าต้องการหยุดการประมวลผลคำสั่ง มี 3 วิธี ขึ้นกับผลที่ต้องการ
ถ้าต้องการหยุดการ loop สามารถใช้ประโยคคำสั่ง break เพื่อหยุดการทำงาน แล้วจะเด้งออกมาทำงานคำสั่งต่อไป
ถ้าต้องการกระโดดไปยังรอบต่อไป สามารถใช้ประโยคคำสั่ง continue
ถ้าต้องการสิ้นสุดประมวลผลสคริปต์ PHP สามารถใช้ exit ตามปกติใช้เมื่อเกิดความผิดพลาด หรือ ใช้เพื่อทดสอบการทำงานบางอย่าง และไม่ต้องการให้ทำงานเลยโค้ดนั้นๆ เช่น
echo “แป้ง”;exit;echo “ไม่น่ารัก”;
ในโค้ดจะแสดงผลแค่ “แป้ง” แต่จะไม่แสดงผลคำว่า “ไม่น่ารัก”

ขอขอบคุณข้อมูลดีดีจาก http://lab.tosdn.com/?p=186

ตัวแปร PHP

ในหัวข้อนี้จะกล่าวถึงตัวแปรนะครับ ตัวแปรในภาษา PHP จะใช้สัญลักษณ์ $ ตามด้วยตัวอักษณก่อน แล้วค่อยตามด้วยตัวเลขหรือตัวอักษรก่อนก็ได้ เช่น $text $text1 $a $b ส่วนตัวอย่างตัวแปรที่ผิดนะครับ $1 $_ $__
เป็น casesensitive ครับ หมายความตัวแปรที่ขึ้นตัวเล็ก ตัวใหญ่เป็นคนละตัวแปรกันครับ
เช่น $a กับ $A ไม่ใช่ตัวเดียวกันครับ ง่ายมากสำหรับตัวแปร การประกาศตัวแปรสามารถประกาศไว้ที่ไหนก็ได้ครับ แต่ต้องอยู่ใน script PHP คืออยู่ในบล็อกนี้ครับ


ทำไมต้องใช้ตัวแปร เอาประโยชน์ที่เห็นได้ชัดนะครับ สมมุตว่าเราพิมพ์คำว่า PHP หลายๆ ครั้งใน 1 หน้าเว็บเพจ แต่บังเอญต้องการเปลี่ยนจากคำว่า PHP เป็น php เราต้องมานั่งแก้ แต่ถ้าเราใช้ตัวแปรเราก็สามารถแก้แค่ตัวแปรเท่านั้นครับ

ตัวอย่าง

$a="aa";
echo"$a";
?>

ผลลัพธ์จะได้เป็น

aa

นอกจากนนี้ยังมีตัวแปรแบบ Array อีกครับ
ตัวแปรแบบ Array ใข้สัญลักษณ์เช่นเดียวกันครับ แต่จะตามด้วยเครื่องหมาย []
และยังมีอีกหลายวิธีทในการประการศนะครับ
ตัวอย่างการประกาศตัวแปรแบบ Array

$myarr[]="aaa";
$myArr=array("ข้อมูลที่1","ข้อมูลที่2","ข้อมูลที่3");

รายละเอียดยังมีอีกเยอะครับเดิ๋ยวจะอธิบายต่อในตอนต่อไป

Hello My Word

เราจะมาทดสอบการทำงานของ PHP นะครับ
ไฟล์แรกในชีวิตเตรียมตัวให้ดีครับ
copy script ข้างล่างนี้ไปนะครับ แล้วบันทึกเป็น hello.php
เอาไปวางไว้ที่ C:AppServ/www/myweb/

myweb ถ้าไม่มีให้สาร้างใหม่นะครับ

<?
echo"Hello My word";
?>

นำไปวางและลองทำตามดูครับ

install Appserv

การติดตั้ง หรือ setup Appserv นั้นง่ายมากครับเพียงแค่ 8 คลิก กับ กรอกข้อมูล 4 ครั้งครับ
1. ดับเบิลคลิกที่ไฟล์ที่ดาวน์โหลดมา .exe นะครับ แล้วจะเห็นผลลัพธ์ดังรูป


setup appserv2. คลิกปุ่ม Next> ต่อไปครับแล้วจะเจอหน้าจอต่อไปนี้

setup appserv3. เป็นหน้าแสดงเงื่อนไขยอมรับการใช้งานครับถ้ายอมรับเงื่อนไขก็กด I Agree ครับ แล้วก็จะแสดงรูปดังภาพข่างล่างครับ

setup appserv 4. ภาพข้างบนเป็นการแสดง Directoryที่เราจะลงโปรแกรม Appserv ครับแนะนำให้เลือกค่าเดิมครับ เพราะคุณจะได้ไม่ต้องแก้ไขอะไรอีก ถ้าเก่งแล้วค่อยมาเลือก Directoryแล้วกันะครับ


setup appserv



5. ภาพข้างบนเป็นการเลือกให้ลง pagkage ต่างๆที่โปรแกรมจัดให้แนะนำให้เลือกทั้งหมดครับเพราะจำเป็นมากในการเขียน PHP+Mysql ครับ แล้วก็กดปุ่ม Next> ได้เลย

setup appserv



6।ภาพข้างบนเป็นการเลือกให้กรอกชื่อ Server และ email ของ Admin ครับ กรอกอะไรก็ได้ครับให้ถูกต้องตามรูปแบบ มั่วเอาก็ได้ไม่จำเป็นเท่าไหร่ เสร็จแล้วก็คลิกปุ่ม Next> ครับ

setup appserv



7. ภาพข้างบนเป็นการให้กรอก password ของฐานข้อมูลครับ ตรงนี้แหละที่สำคัญจด หรือ จำไว้ให้ดีนะครับ เป็น password ของ User ที่ชื่อว่า root ของฐานข้อมูล Mysql ครับ ให้เรากรอก Password ทั้งสองช่องให้ตรงกันครับ และคลิกปุ่ม Install จะเริ่มการติดตั้ง Appserv ครับ

setup appserv



8. ภาพข้างบนโปรแกรมกำลังทำการติดตั้งครับ รอจนโปรแกรม Appserv ทำการติดตั้งเสร็จ

setup appserv



เสร็จแล้วคลิกปุ่ม Finish เพื่อให้โปรแกรมเริ่มทำการ Start Service ของ Apache และ Mysql ครับ



ง่ายมากเลยนะครับ

ต้องขอขอบคุณรูปภาพสวย ๆ จาก http://www.thainextstep.com/php/appserv_setup.php

เริ่มทดสอบการใช้งานให้พิพม์ http://localhost/

เริ่มทดสอบการใช้งานฐานข้อมูลให้พิพม์ http://localhost/phpmyadmin

วันเสาร์ที่ 4 เมษายน พ.ศ. 2552

ใช้งาน PHP อย่างไร

เริ่มใกล้ที่จะถึง PHP แล้วนะครับ แต่ก่อนที่เราจะเขียนโปรแกรม ภาษา PHP ได้เราต้องทำการติดตั้งก่อนครับ ถึงจะเขียนได้
ขั้นตอนการติดตั้งก็ง่ายแสนง่ายครับ ง่ายมากๆ
1. ติดตั้ง Apache Webserver จำได้ไหมครับที่ผมเคยบอกว่ามันเป็น ภาษา Server side script คือ run ฝั่ง Sever เพระฉะนั้นเราต้องมี Server ก่อน แต่การจะไปเช่า Host หรือ Server นั้นจะเป็นการเสียค่าใช้จ่ายสำหรับมือใหม่ เอาไว้เราชำนาญในการเขียนเว็บก่อน ให้เว็บเรามีคนเข้าเยอะๆก่อนแล้วค่อยเสียเงินเช่านะครับ
2. ติดตั้ง PHP คือทำให้เครื่องที่เป็น Web server สามารถรันไฟล์ .php ได้ครับ
3. ติดตั้ง ฐานข้อมูล Mysql (ไม่จำเป็นก็ได้ถ้าไม่ใช่ฐานข้อมูล) แต่ php นี่เข้าเอาไว้ติดต่อกับฐานข้อมูลเป็นหลักครับ
4. ติดตั้งตัว tools สร้างไฟล์ .php แนะนำมือใหม่ใช้ Dream weaver ครับ หรือถ้าใครไม่มี ก็ใช้ notepad ก็ได้ในกรณีที่ต้องการเป็นเทพ

การติดตั้งข้างบนนั้นยังถือว่ายุ่งยากครับ แต่ผมมีวิธีที่ง่ายกว่านั้นครับ ติดตั้งเป็น package ที่เรียกว่า Appserv ครับ Appserv ก็คือโปรแกรม php, apache,Mysql,php myadmin มารวมกันครับ แล้วทำเป็นโปรแกรมเดียวเพื่อความสะดวกในการติดตั้ง
ดาวโหลดได้ที่ คลิกที่นี่ เลยครับ

เมื่อติดตั้งทั้งหมดข้างบนแล้วเราก็เริ่มลงมือเขียนได้เลยครับ

Roadmap php

หัวข้อนี้ผมจะแนะนำแนวทางการศึกษา ที่จะเป็นโปรแกรมเมอร์ในการเรียนเว็บนะครับ ก่อนที่จะศึกษา php คุณควรที่จะเริ่มตามลำดับดังนี้ (บางคนอาจไม่ทำตามนี้ก็ได้นะครับ แต่จากประสบการณ์ของผมแล้ว ควรจะศึกษาตามนี้แล้วจะได้ไม่งง )
1.HTML ศึกษาภาษา html ครับเป็นภาษาที่ใช้ในการสร้างเว็บ เช่น ถ้าเราต้องการสร้างตาราง 2 คอลัมน์ 2 แถว กว้าง 300 px ยาว 200 px โค้ด html ก็จะเป็นแบบนี้ครับ
<table width="300" height="200" border='1'>
<tr>
<td height='100'>แถวที่ 1 คอลัม 1</td><td>แถวที่ 1 คอลัม 2</td>
<tr>
<tr>
<td height='100'>แถวที่ 2 คอลัม 1</td><td>แถวที่ 2 คอลัม 2</td>
</tr>
</table>

ผลลัพครับ







แถวที่ 1 คอลัม 1แถวที่ 1 คอลัม 2
แถวที่ 2 คอลัม 1แถวที่ 2 คอลัม 2


2. SQL คื้อ คำสั่งสั่งคิวรี่ที่เอาใช้รันฐานข้อมูลครับ เช่น select,update,drop ฯลฯ เดี๋ยวว่างจะบอกอย่างละเอียดนะครับ
3. PHP นี่แหละครับพระเอก เอาไว้เป็น Server side script แล้วคุณจะรู้ครับว่ามันดีแค่ไหน ของฟรี

php คืออะไร

php ย่อมาจาก personal hypertext language เป็นภาษาที่ใช้รันฝั่ง Server นั่นก็หมายความว่า คุณจะรันฝั่ง Client ไม่ได้ งงใช่ไหมละครับ ไฟล์ที่เป็น php จะมีนามสกุลเป็น .php ไฟล์ที่รันฝั่ง Server ได้มีหลากหลายไฟล์ครับ เช่น .jsp java server page, .asp ฯลฯ แต่ในที่นี้จะพูดถึง php ก่อนครับ

Server side script คือ script ที่ใช้รันฝั่ง Server นั่นแหละครับ อย่างที่บอกข้างต้น jsp asp php
ประโยชน์ของไฟล์พวกนี้คือ เอาไว้ run ฝั่ง sever

ทำไมต้องรันฝั่ง Sever server มีอะไรดี แน่นอนครับมันต้องมีดีแน่ไม่งั้นคนไม่ run ที่ฝั่ง server กันหมดหรอก 555 ยกตัวอย่างประโยชน์ของ server คร่าวนะครับ
     - สำคัญมาก run ฐานข้อมูล เป็นประโยชน์ทางด้านการเก็บข้อมูล ก็เช่นพวก ทำเว็บบอร์ด ทำแชร์ทรวม ทำทุกอย่างเท่าที่เราจะทำได้
     - ทำไฟล์ download ครับไฟล์พวกนี้จะใช้ php เป็นตัวช่วยในการดาวโหลด
     - ส่งเมล์ครับ php หรือไฟล์พวก server side script สามารถเขียนให้ส่งเมล์ได้ครับ ดีไหมหละ
ฯลฯ ยังมีอีกเยอะมากครับ คิดยังไม่ออก