ฟังก์ชัน call_user_func
ฟังก์ชัน call_user_func ช่วยให้สามารถเรียกใช้ callable function ใดๆ โดยส่งอาร์กิวเมนต์ให้กับมันได้ พารามิเตอร์แรกรับชื่อฟังก์ชันหรือ anonymous function พารามิเตอร์ถัดไปคืออาร์กิวเมนต์สำหรับฟังก์ชันที่จะถูกเรียก
ไวยากรณ์
call_user_func(callable $callback, mixed ...$args): mixed
ตัวอย่าง
ลองเรียกฟังก์ชันมาตรฐาน strtoupper สำหรับสตริง 'hello':
<?php
$res = call_user_func('strtoupper', 'hello');
echo $res;
?>
ผลลัพธ์จากการรันโค้ด:
'HELLO'
ตัวอย่าง
ลองเรียกฟังก์ชันของผู้ใช้ที่มีหลายอาร์กิวเมนต์:
<?php
function sum($a, $b) {
return $a + $b;
}
$res = call_user_func('sum', 5, 3);
echo $res;
?>
ผลลัพธ์จากการรันโค้ด:
8
ตัวอย่าง
การใช้ anonymous function เป็น callback:
<?php
$res = call_user_func(function($name) {
return "Hello, $name!";
}, 'John');
echo $res;
?>
ผลลัพธ์จากการรันโค้ด:
'Hello, John!'
ดูเพิ่มเติม
-
ฟังก์ชัน
call_user_func_array,
ซึ่งเรียก callback function ด้วยอาร์เรย์ของพารามิเตอร์ -
ฟังก์ชัน
function_exists,
ซึ่งตรวจสอบการมีอยู่ของฟังก์ชัน