http://daowroong.igetweb.com
สร้างเว็บไซต์Engine by iGetWeb.com 
 หน้าแรก  บทความ  เว็บบอร์ด  รวมรูปภาพ
ค้นหา  ประเภทการค้นหา   
Menu
หน้าแรก
บทความ
เว็บบอร์ด
รวมรูปภาพ
ชัยบาดาลบ้านเรา
ประวัติศาสตร์ลพบุรี
ล.ลิงลพบุรี
ล.ลิงลพบุรี 2
แผนที่ลพบุรี
คำศัพท์ Com & Net
เว็บไซต์ส่วนราชการ
เทคโนโลยีสารสนเทศ
ภาษาคอมพิวเตอร์
  SQL
  PHP
  ASP
  HTML
ท่องเที่ยวเมืองลพบุรี
มุมเพื่อสุขภาพ
เมนูอาหาร
« April 2024»
SMTWTFS
 123456
78910111213
14151617181920
21222324252627
282930    
สถิติ
เปิดเว็บไซต์ 17/01/2008
ปรับปรุง 22/04/2024
สถิติผู้เข้าชม692,954
Page Views843,914
iGetWeb.com
เว็บสำเร็จรูป ทำเว็บ สร้างเว็บ




 

PHP

ความหมายของ PHP ?


ในปัจจุบัน Web site ต่าง ๆ ได้มีการพัฒนาในด้านต่างๆ อย่างรวดเร็ว อาทิเช่น เรื่องของความสวยงามและแปลกใหม่, การบริการข่าวสารข้อมูลที่ทันสมัย,เป็นสื่อกลางในการติดต่อ และสิ่งหนึ่งที่กำลังได้รับความนิยมเป็นอย่างมากซึ่ง อได้ว่าเป็นการปฏิวัติรูปแบบการ ขายของก็คือ E-commerce ซึ่งเจ้าของสินค้าต่างๆ ไม่จำเป็น ต้องมีร้านค้าจริงและไม่จำเป็นต้องจ้างคนขายของอีกต่อไปร้านค้าและตัวสินค้านั้น จะไปปรากฏอยู่บน Wed site และการซื้อขายก็เกิดขึ้นบนโลกของ Internet แล้ว PHP ช่วยเราให้เป็นการพัฒนา Web site และความสามารถที่โดดเด่นอีกประการ-หนึ่งของ PHP นั้น คือ database-enabled web page ทำให้เอกสารของ HTML สามารถที่ จะเชื่อมต่อกับระบบฐานข้อมูล (database)ได้อย่างมีประสิทธิภาพและรวดเร็ว จึงทำให้ ความตองการในเรื่องการจัดรายการสินค้าและรับรายการสั่งของตลอดจนการจัดเก็บ ข้อมูลต่างๆ ที่สำคัญผ่านทาง Internet เป็นไปได้อย่างง่ายดาย

PHP เป็นภาษาจำพวก scripting language คำสั่งต่างๆจะเก็บอยู่ในไฟล์ที่เรียกว่า สคริปต์ (script) และเวลาใช้งานต้องอาศัยตัวแปลชุดคำสั่ง ตัวอย่างของภาษาสคริปก็เช่น JavaScript, Perl เป็นต้น ลักษณะของ PHP ที่แตกต่างจากภาษาสคริปต์แบบอื่นๆ คือ PHP ได้รับการพัฒนาและออกแบบมา เพื่อใช้งานในการสร้างเอกสารแบบ HTML โดยสามารถสอดแทรกหรือแก้ไขเนื้อหาได้โดยอัตโนมัติ ดังนั้นจึงกล่าวว่า PHP เป็นภาษาที่เรียกว่า server-side หรือ HTML-embedded scripting language เป็นเครื่องมือที่สำคัญชนิดหนึ่งที่ช่วยให้เราสามารถสร้างเอกสารแบบ Dynamic HTML ได้อย่างมีประสิทธิภาพและมีลูกเล่นมากขึ้น

เนื่องจากว่า PHP ไม่ได้เป็นส่วนหนึ่งของตัว Web Server ดังนั้นถ้าจะใช้ PHP ก็จะต้องดูก่อนว่า Web server นั้นสามารถใช้สคริปต์ PHP ได้หรือไม่ ยกตัวอย่างเช่น PHP สามารถใช้ได้กับ Apache WebServer และ Personal Web Server (PWP) สำหรับระบบปฏิบัติการ Windows 95/98/NT
ในกรณีของ Apache เราสามารถใช้ PHP ได้สองรูปแบบคือ ในลักษณะของ CGI และ Apache Module ความแตกต่างอยู่ตรงที่ว่า ถ้าใช้ PHP เป็นแบบโมดูล PHP จะเป็นส่วนหนึ่งของ Apache หรือเป็นส่วนขยายในการทำงานนั่นเอง ซึ่งจะทำงานได้เร็วกว่าแบบที่เป็น CGI เพราะว่า ถ้าเป็น CGI แล้ว ตัวแปลชุดคำสั่งของ PHP ถือว่าเป็นแค่โปรแกรมภายนอก ซึ่ง Apache จะต้องเรียกขึ้นมาทำงานทุกครั้ง ที่ต้องการใช้ PHP ดังนั้น ถ้ามองในเรื่องของประสิทธิภาพในการทำงาน การใช้ PHP แบบที่เป็นโมดูลหนึ่งของ Apache จะทำงานได้มีประสิทธิภาพมากกว่า

ลักษณะเด่นของ PHP

ใช้ได้ฟรี
PHP เป็นโปร แกรมวิ่งข้าง Sever ดังนั้นขีดความสามารถไม่จำกัด
Conlatfun-นั่นคือPHP วิ่งบนเครื่อง UNIX,Linux,Windows ได้หมด
เรียนรู้ง่าย เนืองจาก PHP ฝั่งเข้าไปใน HTML และใช้ดครงสร้างและไวยากรณ์ภาษาง่ายๆ
เร็วและมีประสิทธิภาพ โดยเฉพาะเมือใช้กับ Apach Xerve เพราะไม่ต้องใช้โปรแกรมจากภายนอก
ใช้ร่วมกับ XML ได้ทันที
ใช้กับระบบแฟ้มข้อมูลได้
ใช้กับข้อมูลตัวอักษรได้อย่างมีประสิทธิภาพ
ใช้กับโครงสร้างข้อมูลใช้ได้แบบ Scalar,Array,Associative array
ใช้กับการประมวลผลภาพได้

 

PHP คืออะไร
PHP  ย่อมาจาก '' Hypertext Preprocessor '' เป็นภาษา Server-Side Script อีกภาษาหนึ่งเช่นเดียวกันกับ ASP  ที่มีการทำงานที่เครื่องคอมพิวเตอร์ฝั่ง Server ซึ่งรูปแบบในการเขียนคำสั่งการทำงานนั้นจะมีลักษณะคล้ายกับภาษา Perl หรือภาษา C และสามารถใช้ร่วมงานกันกับ ภาษา HTML ได้อย่างมีประสิทธิภาพ
หมายเหตุ ในการสร้างเว็บจะใช้ Script อยู่ 2 รูปแบบคือ
Server-Side Script เป็นลักษณะการทำงานบนเครื่อง Server และแปลออกมาเป็นภาษา HTML เช่น ASP, CGI
Client-Side Script เป็นลักษณะการทำงานบนเครื่อง Client (เครื่องผู้ใช้)  เช่น JavaScript, VBScript
PHP สามารถทำอะไรได้บ้าง
 ความสามารถของ PHP นั้นสามารถที่จะทำงานเกี่ยวกับ Dynamic Web ได้ทุกรูปแบบ เหมือนกับ CGI หรือ ASP ไม่ว่าจะเป็นการจัดการดูแลระบบฐานข้อมูล ระบบรักษาความปลอดภัย การรับ – ส่ง Cookies
 โดยที่ PHP นั้นสามารถที่จะติดต่อกับโปรแกรมจัดการฐานข้อมูลที่มีอยู่มากมาย ดังนี้

          Adabas D            InterBase Solid                 Microsoft Access
          DBase                 mSQL                               Sybase
          Empress              MySQL                             Velocis
          FilePro                 Oracle                              Unix dbm
          Informin               PostgreSQL                      MS SQL Server
 แต่ความสามารถที่พิเศษกว่านี้ก็คือ PHP สามารถที่จะติดต่อกับบริการต่างๆผ่านทางโพรโตคอล (Protocol) เช่น IMAP, SNMP, NNTP, POP3, HTTP และยังสามารถติดต่อกับ Socket ได้อีกด้วย

History of PHP
ประวัติความเป็นมาของ PHP (History of PHP)

            PHP นั้นถูกคิดค้นขึ้นมาในปี 1994 โดย Rasmus Lerdorf แต่เป็นเวอร์ชั่นที่ไม่เป็นทางการหรือรุ่นทดลองนั่นเอง ซึ่งเวอร์ชั่นนี้ได้มีการทดสอบกับเครื่องของเขาเอง โดยใช้ตรวจสอบติดตามเก็บสถิติข้อมูล ผู้ที่เข้าเยี่ยมชมประวัติส่วนตัวบนเว็บเพจของเขาเท่านั้น

            ต่อมา PHP เวอร์ชั่นแรกได้ถูกพัฒนาและเผยแพร่ให้กับผ็อื่นที่ต้องการใช้ศึกษาในปี 1995 ซึ่งถูกเรียกว่า'' Hypertext Preprocessor '' ซึ่งเป็นที่มาของคำว่า PHP นั่นเอง ซึ่งในระยะเวลานั้น PHP ยังไม่มีความสามารถอะไรที่โดดเด่นมากมาย จนกระทั่งเมื่อประมาณกลางปี 1995 Rasums  ได้คิดค้นและพัฒนาให้ PHP/PI หรือ PHP เวอร์ชั่น 2 ให้มีความสามารถจัดการเกี่ยวกับแบบฟอร์มข้อมูลที่ถูกสร้างมาจากภาษา HTML และสนับสนุนการติดต่อกับโปรแกรมจัดการฐานข้อมูล mSQL จึงทำให้ PHP เริ่มถูฏใช้มากขึ้นอย่างรวดเร็ว และเริ่มมีผู้สนับสนุนการใช้งาน PHP มากขึ้น โดยในปลายปี 1996 PHP ถูกนำไปใช้ประมาณ 15,000 เว็บทั่วโลก และเพิ่มจำนวนขึ้นเรื่อยๆ

          นอกจากนี้ในราวกลางปี 1997 PHP ได้มีการเปลี่ยนแปลงและพัฒนาจากเจ้าของเดิมคือนาย Rasums ที่พัฒนาอยู่เพียงผู้เดียว มาเป็นทีมงาน โดยมีนาย Zeev Suraski และ Adni Gutmans ทำการวิเคราะห์พื้นฐานของ PHP/FI  และได้นำโค้ดมาพัฒนาให้เป็น PHP เวอร์ชั่น 3 ซึ่งมีความสามารถที่มีความสมบูรณ์มากขึ้น

           ในราวกลางปี 1999 PHP เวอร์ชั่น 3 ได้ถูกพัฒนาจนสามารถทำงานร่วมกับ C2’z StrongHold Web Server และ Red Hat Linux ได้
 
ทำไมถึงต้องเลือก PHP
         จากที่กล่าวไปข้างต้นแล้วว่า PHP ก็เป็นภาษา Server-Side Script อีกภาษาหนึ่งเช่นเดียวกันกับ ASP แต่คุณสมบัติที่มากกว่าก็คือ
1. PHP นั้นสามารถรันบนระบบปฏิบัติการได้มากมายเช่น Windows, Unix, Linux และอื่นๆ
2. PHP นั้นรองรับกับการใช้งาน โปรแกรม Server จำลองมากมายเช่น Apache, IIS และอื่นๆ
3. PHP นั้นเป็นของฟรีที่สามารถไปหา Download มาใช้งานได้ฟรีโดยไม่ต่องเสียค่าลิขสิทธิ์เหมือน ASP ที่เว็บอย่างเป็นทางการของ PHP ที่ http://www.php.net/
 
แล้วจะเริ่มใช้งาน PHP ได้ยังไง
1. ทำการติดตั้งตัวแปรภาษา PHP ที่ได้ Download มา
2.  ทำการติดตั้งโปรแกรม Server จำลองบนเครื่องของคุณเพื่อรันภาษา PHP
3. ทำการติดตั้งโปรแกรมจักการฐานข้อมูล MySQL ลงในเครื่องของคุณ
 
จากที่กล่าวไปข้างต้นว่า PHP นั้นรองกับโปรแกรมการจัดการฐานข้อมูลหลายโปรแกรมแต่เนื่องจากโปรแกรมที่นิยนใช้มากที่สุดคือ MySQL ดังนั้นผมจึงจะสอนการใช้งาน PHP กับ MySQL และ Access เท่านั้น ซึ่งทำไมต้อง MySQL สามารถดูรายละเอียดได้ในส่วนของ PHP + MySQL

 

รายชื่อของนักพัฒนาภาษา PHP ที่เป็นแกนหลักสำคัญในปัจจุบันมีดังต่อไปนี้

         Zeev Suraski, Israel Andi Gutmans, Israel Shane Caraveo, Florida USA Stig Bakken, Norway Andrey Zmievski, Nebraska USA Sascha Schumann, Dortmund, Germany Thies C. Arntzen, Hamburg, Germany Jim Winstead, Los Angeles, USA Rasmus Lerdorf, North Carolina, USA

         เนื่องจากว่า PHP ไม่ได้เป็นส่วนหนึ่งของตัว Web Server ดังนั้นถ้าจะใช้ PHP ก็จะต้องดูก่อนว่า Web server นั้นสามารถใช้สคริปต์ PHP ได้หรือไม่ ยกตัวอย่างเช่น PHP สามารถใช้ได้กับ Apache WebServer และ Personal Web Server (PWP) สำหรับระบบปฏิบัติการ Windows 95/98/NT ในกรณีของ Apache เราสามารถใช้ PHP ได้สองรูปแบบคือ ในลักษณะของ CGI และ Apache Module ความแตกต่างอยู่ตรงที่ว่า ถ้าใช้ PHP เป็นแบบโมดูล PHP จะเป็นส่วนหนึ่งของ Apache หรือเป็นส่วนขยายในการทำงานนั่นเอง ซึ่งจะทำงานได้เร็วกว่าแบบที่เป็น CGI เพราะว่า ถ้าเป็น CGI แล้ว ตัวแปลชุดคำสั่งของ PHP ถือว่าเป็นแค่โปรแกรมภายนอก ซึ่ง Apache จะต้องเรียกขึ้นมาทำงานทุกครั้ง ที่ต้องการใช้ PHP ดังนั้น ถ้ามองในเรื่องของประสิทธิ ภาพในการทำงาน การใช้ PHP แบบที่เป็นโมดูลหนึ่งของ Apache จะทำงานได้มีประสิทธิภาพมากกว่า ต่อไปนี้เราจะมาทำความรู้จักกับภาษา PHP และทำความเข้าใจการทำงาน รวมถึงคำสั่งพื้นฐานต่างๆ ที่ใช้ในการเขียนสคริปต์ในภาษา PHP

การสอดแทรกคำสั่งภาษา PHP ในเอกสาร HTML

         เพื่อเป็นการบ่งบอกให้รู้ว่า ส่วนใดเป็นคำสั่ง PHP ที่อยู่ภายในเอกสาร HTML จึงได้มีการกำหนดสัญลักษณ์ไว้ดังนี้ ซึ่งสามารถทำได้หลายรูปแบบ เช่น

 
TAG
STLY
<? ... ?>
(SGML style)
<?php ... ?>
(XML style)
<script language="php"> ... </script>
(JavaScript style)
<% ... %>
(ASP style)
 

         ที่นิยมก็คือแบบแรก โดยเริ่มต้นด้วย <? และจบด้วย ?> และตรงกลางจะเป็นคำสั่งในภาษา PHP เราสามารถวางคำสั่ง PHP ไว้ภายในเอกสาร HTML ตามที่ต้องการได้ อาจจะสลับกับ Tag ของภาษา HTML ก็ได้

 
ตัวอย่าง

<HTML>
   <HEAD><TITLE> Homepage ฉันเอง </TITLE></HEAD>
   <BODY BGCOLOR=#FFFFFF>
      <H1><? echo "สวัสดี พ่อ แม่ พี่น้อง "; ?></H1>
       Your web browser is <? echo $HTTP_USER_AGENT; ?>.
   </BODY>
</HTML>

 

        คำสั่งแรกที่ง่ายที่สุดสำหรับการเรียนรู้ ก็คือคำสั่ง echo แล้วตามด้วยข้อความหรือสตริงค์ (string) ข้อความในภาษา PHP จะเริ่มต้นและจบด้วย double quote (") เหมือนในภาษาซี

 
ตัวอย่าง

<?
   echo "สวัสดี พ่อ แม่ พี่น้อง";
?>

 

        โปรดสังเกตว่า คำสั่งแต่ละคำสั่งในภาษา PHP จะจบท้ายคำสั่งด้วย semicolon (;) เหมือนในภาษาซี ซี่ง คำสั่งหรือฟังก์ชันในภาษา PHP นั้นจะเขียนด้วยตัวพิมพ์เล็กหรือใหญ่ ก็ได้ (case-insensitive)

ตัวแปรในภาษา PHP

         สำหรับการเขียนโปรแกรมสำหรับภาษาคอมพิวเตอร์ระดับสูง สิ่งที่จะขาดเสียมิได้คือ การกำหนดและใช้ตัวแปร (variable) ตัวแปรในภาษา PHP จะเหมือนกับในภาษา Perl คือเริ่มต้นด้วยเครื่องหมาย dollar ($) โดยเราไม่จำเป็นต้องกำหนดแบบของข้อมูล (data type) อย่างเจาะจงเหมือนในภาษาซี เพราะว่า ตัวแปลภาษาจะจำแนกเองโดยอัตโนมัติว่า ตัวแปรดังกล่าว ใช้ข้อมูลแบบใด ในช่วงเวลานั้นๆ เช่น ข้อความ จำนวนเต็ม จำนวนที่มีเลขจุดทศนิยมตรรก เป็นต้น

 
ตัวอย่าง
$datastring = "สวัสดี พ่อ แม่ พี่น้อง";
$datainteger = 1024;
$datafloat = 0.707;
 

         ถ้าเราต้องการจะแสดงค่าของตัวแปร ก็อาจจะใช้คำสั่ง echo ได้

 
ตัวอย่าง
echo "$datastring\n";
echo "$datainteger\n";
echo "$datafloat\n";
 

        สัญลักษณ์ \n หมายถึงการขึ้นบรรทัดใหม่ เป็น escape character ตัวหนึ่ง (สำหรับตัวอื่นๆ โปรดดูในตาราง) เมื่อพิมพ์ข้อความเป็นเอาพุต และโปรดสังเกตว่า สำหรับการใช้งานภายในเอกสาร HTML การขึ้นบรรทัดใหม่โดยใช้ \n จะแตกต่างจากการขึ้นบรรทัดโดยใช้ <BR> ใน HTML

 
ตัวอย่าง

<?
   $datastring = "สวัสดี พ่อ แม่ พี่น้อ";
   $datainteger = 1024;
   $datafloat = 0.707;echo
   "$datastring\n";
   echo "$datainteger\n";
   echo "$datafloat\n";
?>

 

 
Escaped characters

\n newline
\r carriage
\t horizontal tab
\\ backslash
\$ dollar sign
\" double-quote
%% percent

 

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

 
ตัวอย่าง

<?
   $x = 12;
   $y = $x + 17.5;
   echo "$x, $y \n";
   $x = "abc";
   echo "$x \n";
   $z = $x + 19.5;
   echo "$x, $z \n";
   echo ("1024.5" - 14);
   echo (0xef + 007);
?>

 

        ในกรณีนี้ เรากำหนดในตอนแรกว่า $x ให้เก็บค่า 12 ซึ่งเป็นจำนวนเต็ม ถ้าเรานำมาบวกกับ 17.5 ผลที่ได้ก็จะเป็น 29.5 ซึ่งกลายเป็นเลขทศนิยม แล้วเก็บไว้ในตัวแปร $y ต่อมากำหนดให้ตัวแปร $x เก็บสตริงค์ที่เก็บข้อความ "abc" ถ้าเรานำมาบวกกับ 19.5 กรณีนี้ก็จะให้ผลที่ได้ไม่ถูกต้อง เนื่องจากไม่ สามารถนำข้อความมาบวกกับตัวเลขได้ แต่ PHP อนุญาตให้เราทำเช่นนั้นได้ในบางกรณี สมมุติว่า สตริงค์มีเฉพาะตัวเลขและ สามารถเปลี่ยนเป็น เลขจำนวนเต็ม หรือจำนวนจริงได้โดยอัตโนมัติ เราก็นำสตริงค์ นี้มาบวกลบคูณหรือหารกับตัวแปรที่เก็บเป็นตัวเลขได้ ค่าคงที่สำหรับเลขจำนวนเต็ม อาจจะอยู่ในรูปของเลขฐานแปดหรือสิบหกก็ได้ ถ้าเป็นเลขฐานแปดจะมีเลขศูนย์นำ ถ้าเป็นเลขฐานสิบหกจะมี 0x นำหน้า การอ่านและแปลงแบบข้อมูลในตัวแปรหรือค่าคงที่แบบเจาะจงเราสามารถแปลงแบบข้อมูลจากแบบหนึ่งไปยังอีกแบบหนึ่ง (type casting) เช่น แปลงจากข้อความที่มีเฉพาะตัวเลขให้กลายเป็นเลขจำนวนเต็ม (int) หรือทศนิยม (double), (float), (real) หรืออาจจะใช้คำสั่ง settype() ทำได้ดังนี้

 
ตัวอย่าง

<?
   $x = ((double)"100.1") + 0.3e+3;
    echo $x," <BR>\n";
   echo ($x=(int)$x)," <BR>\n";
   $x = "P".$x."\n";
   echo $x," <BR>\n";

   $x= ceil(13.45); /* get integer part */
   echo $x," <BR>\n";
   if (!settype( $x, "integer") ) {
           echo "error\n";
   }
   echo $x," $x%5=",($x%5)," <BR>\n";
?>

 

การใช้ตัวแปร ใน PHP

         ถ้าต้องการเช็คดูว่า ตัวแปรมีข้อมูลแบบใด เราสามารถใช้คำสั่ง gettype() ได้ ค่าที่ได้จากฟังก์ชันก็จะเป็น "integer" "double" หรือ "string" เป็นต้น

 
ตัวอย่าง

<?
   echo gettype(0),"\n";
   echo gettype(1.1),"\n";
   echo gettype(""),"\n";
   echo gettype((1==1)),"\n";

   $var="abc";
   if ( gettype($var)=="string" ) {
      echo "this is a string\n";
   }
?>

 

        เราอาจจะไม่ใช้ gettype() ก็ได้ แต่เลือกใช้ฟังก์ชัน is_long() สำหรับเช็คค่าที่เป็นเลขจำนวนเต็ม, is_string() สำหรับเช็คค่าที่เป็นสตริงค์, is_double() สำหรับค่าที่เป็นเลขทศนิยม, is_array() สำหรับค่าที่เป็นอาร์เรย์ หรือ is_object() สำหรับค่าที่เป็นออปเจคจากคลาสแทน ซึ่งจะให้ค่าเท่ากับ true (1) ถ้าตัวแปรมีแบบข้อมูล ตรงตามที่กำหนด

 
ตัวอย่าง

<?
   unset($a);
   $a="hello";
   if (is_string($a) == true) {
      echo "\$a is a string <BR>\n";
   }

unset($a);
   $a[]="red";
   $a[]="green";
   $a[]="blue";

   if (is_array($a) == true) {
      echo "\$a is an array of size ",count($a),"<BR>\n";
   }
?>

 

        โปรดสังเกตว่า เราใช้คำสั่ง unset() เพื่อลบค่าที่ตัวแปรเก็บอยู่ในขณะนั้น ในกรณีนี้ เรากำหนดให้ $a เป็นสตริงค์ในตอนแรก ถ้าเราจะต้องการใช้ตัวแปรตัวเดียวกันนี้ เป็นค่าใหม่แต่เป็นอาร์เรย์ ก็จะใช้คำสั่ง unset() ก่อน

การใช้ echo เพื่อแสดงข้อความ

        การพิมพ์ค่าใดๆที่เก็บอยู่ในตัวแปร ถ้าชื่อของตัวแปรอยู่ในสตริงค์ระหว่าง double quote เวลาสร้างเอาพุตแล้ว จะอ่านค่าของตัวแปรนั้นก่อนแล้วจึงแทนที่ลงในข้อความ แต่ถ้านำหน้าด้วย backslash (\) ก็จะไม่มีการอ่านค่าของตัวแปร เช่น "\$a" จะให้ผลต่างจาก "$a" สังเกตได้จากตัวอย่างต่อไปนี้

 
ตัวอย่าง

<?
   $a=1;
   echo "\$a=$a <BR>\n";
   $test = "test";
   echo "$test$test$test<BR>\n";
   echo $test,$test,$test,"<BR>\n";

   $a = 1;
   $b = 2;
   echo $a,"+",$b,"=","$a+$b","<BR>\n";
   echo $a,"+",$b,"=",$a+$b,"<BR>\n";
?>

 

        สำหรับข้อความในภาษา PHP เราอาจจะใช้ single qoute แทน double quote ได้ แต่เวลาใช้งานร่วมกับ echo หรือ print() จะให้ผลต่างกัน ซึ่งสังเกตได้จากตัวอย่างต่อไปนี้

 
ตัวอย่าง

<?
   $a="aaa";
   $b = 'bbb';
   echo "$a $b<BR>\n";
   echo '$a $b<BR>\n';
?>

 

        ตัวแปลคำสั่งจะมองข้ามชื่อตัวแปรและรวมถึงพวก escape sequence ต่างๆด้วยที่อยู่ในข้อความที่ใช้ single quote

คำอธิบายในภาษา PHP

        ถ้าเราต้องการเขียนคำอธิบายในส่วนใดๆก็ตามของสคริปต์ เราก็จะสามารถทำได้โดยใช้ /* ... */ เหมือนในภาษาซี หรือ // เหมือนในภาษาจาวา หรือ # เหมือน shell script โปรดสังเกตว่า // ใช้เขียนนำคำอธิบายในภายบรรทัดหนึ่งๆ เท่านั้น ส่วน # ใช้เริ่มต้นของบรรทัดที่เขียนคำอธิบาย

 
ตัวอย่าง

<?
   $a="aaa"; #ตัวแปร a
   $b = 'bbb'; /* ตัวแปร b */
   echo "$a $b<BR>\n"; // แสดง ค่า a และ ค่า B
   echo '$a $b<BR>\n';
?>

 

การคำนวณทางคณิตศาสตร์

        เครื่องหมายที่ใช้มีดังนี้

 
เครื่องหมาย
ตัวอย่าง
บวก (+)
ลบ (-)
คูณ (*)
หาร (/)
$x + $y
$x - $y
$x * $y
$x / $y
 

         หาเศษจากการหาร (%) หรือโมดูลัส

เช่น $x % $y การเศษจากการหารโดยปรกติจะใช้กับเลขจำนวนเต็มเท่านั้น ถ้าใช้กับเลขมีจุดทศนิยม จะมีการปัดทิ้งเป็นจำนวนเต็มก่อน กำหนดให้ $x มีค่าเท่ากับ 7 และ $y มีค่าเท่ากับ 4

 
ตัวอย่าง

$x + $y 11
$x - $y 3
$x * $y 28
$x / $y 1.75
$x % $y 3

 

        กำหนดให้ $x มีค่าเท่ากับ 2.5 และ $y มีค่าเท่ากับ 4

 
ตัวอย่าง

$x + $y 6.5
$x - $y -1.5
$x * $y 1.0
$x / $y 0.615
$x % $y 2

 

การเพิ่มหรือลดค่าของตัวเลขในตัวแปรทีละหนึ่ง

        ตามแบบภาษาซีหรือจาวา

 
ตัวอย่าง
ความหมาย
$x++
++$x
$x--
--$x
เพิ่มค่าขึ้นอีกหนึ่ง
เพิ่มค่าขึ้นอีกหนึ่ง
ลดค่าลงอีกหนึ่ง
ลดค่าลงอีกหนึ่ง
 

        ความแตกต่างของการวาง ++ หรือ -- ไว้ข้างหน้าหรือข้างหลัง คือดูว่า จะอ่านค่าของตัวแปรก่อน (ในกรณีที่มีการอ่านค่าของตัวแปร) หรืออ่านค่าหลังจากการเพิ่มหรือลด โปรดลองทำตามตัวอย่างแล้วสังเกตผลลัพธ์ที่ได้ในแต่ละกรณี

 
ตัวอย่าง

<?
   $x=3;
   echo $x++,"<BR>\n";
   echo $x,"<BR>\n";
   $x=3;
   echo ++$x,"<BR>\n";
   echo $x,"<BR>\n";
   $x=3;
   echo $x--,"<BR>\n";
   echo $x,"<BR>\n";
   $x=3;
   echo --$x,"<BR>\n";
   echo $x,"<BR>\n";
?>

 

การกำหนดค่าของตัวแปรที่เป็นตัวเลขหรือสตริงค์

        โดยใช้ assignment operators การกำหนดค่า (assignment ) หรือเปลี่ยนแปลงค่าให้แก่ตัวแปร จะใช้โอเปอร์เรเตอร์ (assignment operators) ได้ในหลายๆรูปแบบ เหมือนอย่างที่ใช้ในภาษาซี ตามตัวอย่างต่อไปนี้

 
ตัวอย่าง
ความหมาย
$x=0;
$x += 1;
$x--;
$x *= 3;
$x /= 2;
$x %= 4;
$x="";
$x .= 'A';
$x .= "BC";

เหมือนกับ $x = $x + 1;
เหมือนกับ $x = $x - 1;
เหมือนกับ $x = $x * 3;
เหมือนกับ $x = $x / 2;
เหมือนกับ $x = $x % 4;

รวมค่า char เข้าไปใน string ที่มีอยู่
รวมค่า char เข้าไปใน string ที่มีอยู่
 

        จากตัวอย่างข้างบน ในกรณีของการต่อสตริงค์ เราจะใช้จุด (.) เป็นโอเปอร์เรเตอร์

การใช้ตัวแปรเป็นชื่อของตัวแปร

        ภาษา PHP เปิดโอกาสให้เราสามารถเลือกหรือเปลี่ยนชื่อของตัวแปรได้ ตัวอย่างเช่น

 
ตัวอย่าง

<?
    $a = "var1";
   $$a = 10.3;
   echo "$a ${$a} $$a <BR>\n";
   echo "$var1 <BR>\n";
?>

 

        จากตัวอย่างข้างบน เรากำหนดให้ตัวแปร $a เก็บสตริงค์ "var1" และจะใช้เป็นชื่อของตัวแปรอีกตัวหนึ่ง โดยทางอ้อม $$a เป็นการอ้างถึงตัวแปรที่มีชื่อเดียวกับค่าของตัวแปร $a (ในกรณีนี้คือ var1) ดังนั้นถ้าเราเขียนว่า $$a หรือ $var1 ก็หมายถึงตัวแปรตัวเดียวกัน ถ้าต้องการแสดงค่าของ $$a โดยใช้คำสั่ง echo โดยอยู่ในสตริงค์ (ระหว่าง double quotations) เราจะต้องเขียน ${$a} ไม่ใช่ $$a เพราะว่า ถ้าเขียนตามแบบหลัง ตัวแปลคำสั่งจะอ่านค่า $a ก่อนแล้วแทนที่ลงในข้อความ ซึ่งจะได้ $var1แทนที่จะเป็นการอ่านค่าของ $var1 เทคนิคนี้ยังสามารถใช้ได้กับฟังก์ชัน

 
ตัวอย่าง

<?
   function foobar() {
   echo "foobar<BR>\n";
}
   function callFunc ($f) {
   if ( is_string($f) == true) {
      $f();
    }
}

    }callFunc("foobar");
?>

 

        ตัวอย่างข้างบนอาจจะทำให้เกิดปัญหาถ้าสมมุติว่า $f เป็นชื่อของฟังก์ชันที่ไม่มีอยู่จริง วิธีตรวจสอบคือ การใช้ฟังก์ชัน function_exists() ดังต่อไปนี้

 
ตัวอย่าง

<?
   function MyFunc() {
      print ("ok..<BR>\n");
   }
   $f="myFunc";
   if ( function_exists($f) ) {
      $f();
   }
   else {
      echo "$f does not exist!";
   }
?>

 

การกำหนดค่าคงที่

        ในภาษา PHP มีการทำสัญลักษณ์ให้เก็บค่าคงที่ เช่น อาจจะเป็นสตริงค์หรือตัวเลขก็ได้ สามารถทำได้โดยใช้ คำสั่ง DEFINE() สัญลักษณ์ที่กำหนดโดยคำสั่ง DEFINE() จะเหมือนกันตัวแปรทั่วๆไป แต่แตกต่างตรงที่ว่า เมื่อนิยามแล้วจะเปลี่ยนแปลงค่าอีกไม่ได้

 
ตัวอย่าง

<?
    define(PI, 3.141592654);
   define(YES, true);
   define(NO, false);
   define("AUTHOR", "RWS");
   echo (PI/3),"<BR>\n";
   echo "AUTHOR=".AUTHOR."<BR>\n";
    echo "YES=".YES."<BR>\n";
?>

 

        นอกจากสัญลักษณ์ที่ผู้ใช้นิยามขึ้นมาได้เองแล้วยังมีสัญลักษณ์กลุ่มหนึ่งที่ได้มีการนิยามไว้ก่อนแล้วในภาษา PHP ตัวอย่างเช่น

 
ตัวอย่าง
ความหมาย
__LINE__
TRUE
FALSE
PHP_VERSION
PHP_OS
เก็บเลขบรรทัดภายในสคริปต์ในตอนที่ใช้
มีค่าเป็นจริง
มีค่าเป็นเท็จ
เก็บเวอร์ชั่นของ PHP
เก็บชื่อระบบปฏิบัติการที่ใช้ เช่นWindows
 
 หน้าแรก  บทความ  เว็บบอร์ด  รวมรูปภาพ
view