Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

ฟังก์ชันตัวแปร PHP


แนะนำตัว

หากชื่อของตัวแปรมีวงเล็บ (มีหรือไม่มีพารามิเตอร์อยู่ข้างหน้า) ตัวแยกวิเคราะห์ PHP จะพยายามค้นหาฟังก์ชันที่มีชื่อตรงกับค่าของตัวแปรและดำเนินการ ฟังก์ชันดังกล่าวเรียกว่าฟังก์ชันตัวแปร คุณลักษณะนี้มีประโยชน์ในการใช้เรียกกลับ ตารางฟังก์ชัน ฯลฯ

ไม่สามารถสร้างฟังก์ชันตัวแปรได้โดยใช้โครงสร้างภาษาใดภาษาหนึ่ง เช่น include, require, echo เป็นต้น แต่สามารถหาวิธีแก้ไขปัญหาชั่วคราวได้โดยใช้ตัวตัดฟังก์ชัน

ตัวอย่างฟังก์ชันตัวแปร

ในตัวอย่างต่อไปนี้ ค่าของตัวแปรตรงกับฟังก์ชันของชื่อ ฟังก์ชันนี้จึงถูกเรียกโดยใส่วงเล็บไว้หน้าตัวแปร

ตัวอย่าง

<?php
function hello(){
   echo "Hello World";
}
$var="Hello";
$var();
?>

ผลลัพธ์

ซึ่งจะให้ผลลัพธ์ตามมา −

Hello World

นี่เป็นอีกตัวอย่างหนึ่งของฟังก์ชันตัวแปรที่มีอาร์กิวเมนต์

ตัวอย่าง

<?php
function add($x, $y){
   echo $x+$y;
}
$var="add";
$var(10,20);
?>

ผลลัพธ์

ซึ่งจะให้ผลลัพธ์ตามมา −

30

ในตัวอย่างต่อไปนี้ ชื่อของฟังก์ชันที่จะเรียกถูกป้อนโดยผู้ใช้

ตัวอย่าง

<?php
function add($x, $y){
   echo $x+$y;
}
function sub($x, $y){
   echo $x-$y;
}
$var=readline("enter name of function: ");
$var(10,20);
?>

ผลลัพธ์

ซึ่งจะให้ผลลัพธ์ตามมา −

enter name of function: add
30

ตัวอย่างวิธีการแปรผัน

แนวคิดของฟังก์ชันตัวแปรสามารถขยายไปยังเมธอดในคลาสได้

ตัวอย่าง

<?php
class myclass{
   function welcome($name){
      echo "Welcome $name";
   }
}
$obj=new myclass();
$f="welcome";
$obj->$f("Amar");
?>

ผลลัพธ์

ซึ่งจะให้ผลลัพธ์ตามมา −

Welcome Amar

วิธีสแตติกสามารถเรียกได้ด้วยเทคนิควิธีตัวแปร

ตัวอย่าง

<?php
class myclass{
   static function welcome($name){
      echo "Welcome $name";
   }
}
$f="welcome";
myclass::$f("Amar");
?>

ผลลัพธ์

ตอนนี้จะมีข้อยกเว้นดังต่อไปนี้ -

Welcome Amar