6.1 ຟັງຊັນໃນ PHP
ຟັງຊັນທີ່ຜູ້ຂຽນໂປຣແກຣມສ້າງຂຶ້ນມາເພື່ອນຳໄປໃຊ້ງານເອງໝາຍເຖິງຊຸດຄຳສັ່ງຍ່ອຍໆຫຼືໂປຣແກຣມຍ່ອຍທີ່ຖືກຂຽນຂຶ້ນມາ
ເພື່ອໃຊ້ງານຮ່ວມກັບຄຳສັ່ງ ຫຼືຟັງຊັນອື່ນໆໃນໂປຣແກຣມ ເພື່ອໃຫ້ໂປຣແກຣມເຮັດວຽກໄດ້ສົມບູນແບບ ໂດຍຊຸດຄຳສັ່ງຍ່ອຍນີ້ສາມາດຖືກເອີ້ນໃຊ້ຊ້ຳໄດ້ຫຼາຍຄັ້ງ ເຊັ່ນ ຄຳສັ່ງກວດສອບຂໍ້ຄວາມທີ່ບໍ່ເໝາະສົມ,ຄຳສັ່ງສະແດງວັນເວລາ ເປັນຕົ້ນ.
ຈຸດດີຂອງການສ້າງຟັງຊັນຂຶ້ນມາໃຊ້ງານເອງຄື ລຸດຜ່ອນການຂຽນໂປຣແກຣມທີ່ຄືກັນໂດຍບໍ່ຕ້ອງຂຽນຫຼາຍເທື່ອ ເຊິ່ງຈະມີການເກັບຊຸດຄຳສັ່ງໄວ້ພຽງຊຸດດຽວ ແລະ ຊ່ວຍໃຫ້ການແກ້ໄຂໃນພາຍຫຼັງງ່າຍຂຶ້ນເມື່ອເວລາຊຸດຄຳສັ່ງຍ່ອຍມີ ການປ່ຽນແປງ.
ເພື່ອໃຊ້ງານຮ່ວມກັບຄຳສັ່ງ ຫຼືຟັງຊັນອື່ນໆໃນໂປຣແກຣມ ເພື່ອໃຫ້ໂປຣແກຣມເຮັດວຽກໄດ້ສົມບູນແບບ ໂດຍຊຸດຄຳສັ່ງຍ່ອຍນີ້ສາມາດຖືກເອີ້ນໃຊ້ຊ້ຳໄດ້ຫຼາຍຄັ້ງ ເຊັ່ນ ຄຳສັ່ງກວດສອບຂໍ້ຄວາມທີ່ບໍ່ເໝາະສົມ,ຄຳສັ່ງສະແດງວັນເວລາ ເປັນຕົ້ນ.
ຈຸດດີຂອງການສ້າງຟັງຊັນຂຶ້ນມາໃຊ້ງານເອງຄື ລຸດຜ່ອນການຂຽນໂປຣແກຣມທີ່ຄືກັນໂດຍບໍ່ຕ້ອງຂຽນຫຼາຍເທື່ອ ເຊິ່ງຈະມີການເກັບຊຸດຄຳສັ່ງໄວ້ພຽງຊຸດດຽວ ແລະ ຊ່ວຍໃຫ້ການແກ້ໄຂໃນພາຍຫຼັງງ່າຍຂຶ້ນເມື່ອເວລາຊຸດຄຳສັ່ງຍ່ອຍມີ ການປ່ຽນແປງ.
1) ຕົວປ່ຽນສົ່ງ ແລະ ຕົວປ່ຽນຮັບ.
ກ່ອນທີ່ເຮົາຈະສ້າງຟັງຊັນໄວ້ໃຊ້ງານ
ເຮົາຕ້ອງຮຽນຮູ້ ແລະເຂົ້າໃຈກ່ຽວກັບຕົວປ່ຽນ 2 ປະເພດຄື:
ຕົວປ່ຽນສົ່ງ ແລະ ຕົວປ່ຽນຮັບ
+ ຕົວປ່ຽນສົ່ງ(Parameter)
ແມ່ນຕົວປ່ຽນທີ່ຟັງຊັນສ້າງໄວ້ຮັບຄ່າທີ່ຈະສົ່ງເຂົ້າມາ
ແລະຈະນຳເອົາຄ່າຕົວປ່ຽນເຫຼົ່ານັ້ນໄປປະມວນຜົນໃນຟັງຊັນ.
+ ຕົວປ່ຽນຮັບ(Argument) ແມ່ນຕົວປ່ຽນທີ່ສົ່ງຄ່າມາໃຫ້ຟັງ ເຊິ່ງຈະໃຊ້ໃນການເອີ້ນໃຊ້ງານຟັງຊັນ
2) ສ່ວນປະກອບຂອງຟັງຊັນ.
+ ຕົວປ່ຽນຮັບ(Argument) ແມ່ນຕົວປ່ຽນທີ່ສົ່ງຄ່າມາໃຫ້ຟັງ ເຊິ່ງຈະໃຊ້ໃນການເອີ້ນໃຊ້ງານຟັງຊັນ
2) ສ່ວນປະກອບຂອງຟັງຊັນ.
ຟັງຊັນທີ່ເຮົາຈະສ້າງຂຶ້ນມີສ່ວນປະກອບທີ່ສຳຄັນ 2 ສ່ວນຄື:
2.1 ສ່ວນປະກາດຟັງຊັນ:
ປະກອບດ້ວຍ
ຊື່ຟັງຊັນ,ຕົວປ່ຽນສົ່ງ,ຄຳສັ່ງຕ່າງໆທີ່ຕ້ອງການໃຫ້ຟັງຊັນເຮັດວຽກ
ແລະການຄືນຄ່າຂອງຟັງຊັນ(ອາດຈະມີ ຫຼືບໍ່ມີກໍ່ໄດ້)
ມີຮູບແບບການສ້າງຟັງຊັນ
function ຊື່ຟັງຊັນ ($parameter1,$parameter2,...) { ຄຳສັ່ງຕ່າງໆທີ່ຕ້ອງການໃຫ້ຟັງຊັນເຮັດວຽກ; ການຄືນຄ່າຂອງຟັງຊັນ(ອາດຈະມີ ຫຼືບໍ່ມີກໍ່ໄດ້); } |
2.2 ສ່ວນການເອີ້ນໃຊ້ຟັງຊັນ: ຈະປະກອບດ້ວຍຊື່ທີ່ໃຊ້ເອີ້ນຟັງຊັນຂຶ້ນມາໃຊ້ງານ ຕາມຄ່າຕົວປ່ຽນຮັບ ເຊິ່ງມີຮູບແບບການຂຽນດັ່ງນີ້
ຊື່ຟັງຊັນ (Argument1, Argument2);
|
ຕົວຢ່າງ:
<? function convert_month($input) { $month=array("","Jan","Feb","Mar","Apl","May","Jun","Jul","Ags","Set","Obt", "Nov","Dec"); return $month[$input]; } $num=12; echo convert_month($num); ?> |
ຜົນໄດ້ຮັບ
ຈາກຕົວຢ່າງຂ້າງເທິງນີ້ ເຮົາປະກາດຟັງຊັນຊື່ convert_month ແລະ ກຳນົດຕົວປ່ຽນ $num ເກັບເລກລຳດັບຂອງເດືອນເທົ່າກັບ 12 ແລ້ວສົ່ງຄ່າຕົວປ່ຽນ $num ເຂົ້າໄປປະມວນຜົນໃນຟັງຊັນ ແລ້ວຟັງຊັນຈະຄືນຄ່າອອກມາເປັນຊື່ຂອງເດືອນ.
3. ຟັງຊັນທີ່ບໍ່ມີການຄືນຄ່າ.
ຟັງຊັນທີ່ບໍ່ມີການຄືນຄ່າ ຈະໃຊ້ຄຳສັ່ງ
return ໃນຈຸດທີ່ຕ້ອງການຍຸດການເຮັດວຽກພາຍໃນຟັງຊັນ
ແລ້ວເຮັດວຽກໃນຂັ້ນຕອນຕໍ່ໄປ
ຕົວຢ່າງ:
ຕົວຢ່າງ:
<? function checkmail($checkmail) { if(ereg("^[^@]+@([a-zA-Z0-9\-]+\.)+([a-zA-Z0-9\-] {2} |net|com|org)$",$checkmail) ) { echo "Your email address is correct<br>"; return; } else { echo "Your email address is wrong<br>"; return; } } $email1="ngaviseth@hotmail.com"; $email2="ngaviseth#hotmail.com"; checkmail($email1); checkmail($email2); ?> |
4. ຟັງຊັນທີ່ມີການຄືນຄ່າ.
ຟັງຊັນທີ່ມີການຄືນຄ່າ
ຫຼືຜົນຮັບກັບອອກມາຈາກຟັງຊັນສ່ວນຫຼາຍເປັນຟັງຊັນປະເພດທີ່
ຕ້ອງການຄຳນວນ ໂດຍຈະໃຊ້ຄຳສັ່ງ return
ຕາມດ້ວຍຄ່າທີ່ຕ້ອງການສົ່ງກັບ
ເຊິ່ງຄ່າທີ່ສົ່ງກັບໄປອາດຈະເປັນຕົວປ່ຽນ,ຄ່າຄົງຄ່າ
ຫຼືຟັງຊັນກໍ່ໄດ້.
ຕົວຢ່າງ:
ຕົວຢ່າງ:
<? function summary($intx,$inty) { $sum=$intx+$inty; return($sum); } $x=10; $y=12; $z=summary($x,$y); echo "x=$x,y=$y<br>"; echo "sum of x + y = ",$z; ?> |
ຜົນໄດ້ຮັບ