วันอาทิตย์ที่ 2 กรกฎาคม พ.ศ. 2560

การเขียน Function ใน PHP (PHP Functions)

ไม่มีความคิดเห็น
การเขียน Function ใน PHP (PHP Functions)

การเขียน Function  ใน PHP มีประโยชน์ยังไง? ใครทราบบ้าง สำหรับมือใหม่อาจไม่เคยเขียนเพราะว่าอาจยังเขียน บรรทัดลงไปเรื่อยๆ บางครั้งข้อมูลมีการคำนวนค่า แบบเดิมก็เขียนต่อไปเรื่อย แล้วทำไงจะไม่ต้องเขียนซ้ำ? นี่ละคือคำตอบ เขียนเป็น Function ไง ประโยชน์คือสามารถเรียกใช้งานได้เรื่อยๆ ไม่ต้องมาเขียนใหม่ให้เสียเวลา เวลาแก้ไขก็แก้ที่เดียวจบ มาดูวิธีการเขียนกันก่อน

Syntax
function functionName() {    code to be executed;}
ตัวอย่าง
ผมจะสร้างฟังก์ชัน ที่ผมใส่ชื่อแล้วมีคำว่า "สวัสดีค่ะ คุณ" แล้วตามด้วยชื่อที่เรากำหนด มาเริ่มกันเลย
<?php
function displayName($name)
{
echo "สวัสดีค่ะ คุณ$name";
}
displayName("konfreedom");
?> 
ผลลัพธ์ 
สวัสดีค่ะ คุณkonfreedom 
ตัวอย่างนี้ผมได้สร้างชื่อฟังก์ชัน ว่า displayName แล้วรับค่า 1 ค่าคือ $name แล้วให้ฟังก์ชันแสดงค่าออกมา

ตัวอย่างต่อไป จะกำหนดค่าเริ่มต้นให้กับพารามิเตอร์ ผมจะเขียนฟังก์ชันเดิมแต่เพิ่มเติมคือกำหนดค่าให้กับ $name มาดูกัน

ตัวอย่าง
<?php
function displayName($name="Guest")
{
echo "สวัสดีค่ะ คุณ$name";
}
displayName("konfreedom");
?> 
ผลลัพธ์ 
สวัสดีค่ะ คุณkonfreedom 
ผลลัพธ์ยังเหมือนเดิมไม่มีอะไรเปลี่ยนแปลง แต่ถ้าผมเรียกฟังก์ชันแบบนี้ละ

 <?php
function displayName($name="Guest")
{
echo "สวัสดีค่ะ คุณ$name";
}
displayName(); //ลองปล่อยเป็นค่าว่าง
?> 
ผลลัพธ์ 
สวัสดีค่ะ คุณGuest  
ข้อมูลที่แสดงจะเป็นชื่อที่เรากำหนดไว้ คือ Guest ช่วยให้เรากำหนดค่าเริ่มต้นของพารามิเตอร์ได้
สมมุติเราไม่ได้กำหนดค่าเริ่มต้นไว้ แต่เราเรียกแบบนี้ละ

 <?php
function displayName($name)
{
echo "สวัสดีค่ะ คุณ$name";
}
displayName(); //ลองปล่อยเป็นค่าว่าง
?> 
ผลลัพธ์
Warning: Missing argument 1 for displayName() 
Error สิครับ มันฟ้องว่าฟังก์ชัน displayName() ต้องรับค่า 1 ค่า

ตัวอย่างต่อไป สร้างฟังก์ชัน คำนวนค่า 2 ค่า ในที่นี้ผมจะรับค่า 2 ค่า แล้วนำมาบวกกัน
<?php
function sum($num1,$num2)
{
return $num1+$num2;
}
echo "result:".sum(1,2)."<BR>";
echo "result:".sum(9,6)."<BR>";
echo "result:".sum(7,3)."<BR>";
echo "result:".sum(10,10)."<BR>";
?> 
ผลลัพธ์ 
result:3
result:15
result:10
result:20
ตัวอย่างที่ซับซ้อนขึ้น  ฟังก์ชันเรียกฟังก์ชันตัวเอง ผมจะใส่ คอมม่า(,) หลังตัวอักษรทุก 1 ตัวอักษร แต่ถ้าตัวอักษรที่กำหนด มีแค่ 1 ตัวอักษรหรือเป็นตัวอักษรตัวท้ายสุด จะไม่ใส่ คอมม่า(,) ลงไป

ตัวอย่าง
<?php
function addComma($string)
{
$resultString = null;
$stringLenght = strlen($string);
if($stringLenght > 0)
{
$resultString = substr($string,0,1);
if($stringLenght > 1)
{
 $resultString .= ",";
}
$string = substr($string,1);
if(strlen($string) > 0)
{
$resultString .= addcomma($string);
}
}
return $resultString;
}
echo "result:".addcomma("ABCDEF");
echo "</br>"; //ขึ้นบรรทัด
echo "result:".addcomma("A");
?> 

ผลลัพธ์
result:A,B,C,D,E,F
result:A 
สุดท้าย ผมก็ขอจบการเขียน Function PHP ไว้แค่นี้นะครับ หวังว่าจะเป็นประโยชน์กับท่านไม่มากก็น้อย

ไม่มีความคิดเห็น :

แสดงความคิดเห็น