PHP 函数调用其他函数
在 PHP 中,您可以使用内置的 call_user_func() 函数来调用其他函数。call_user_func() 接受两个参数:要调用的函数名和一个包含函数参数的数组。
<?php // 定义一个函数 function addNumbers($a, $b) { return $a + $b; } // 使用 call_user_func() 调用函数 $result = call_user_func('addNumbers', 10, 20); // 输出结果 echo $result; // 输出:30 ?>
实战案例:计算总额
以下是一个使用 call_user_func() 计算购物篮中所有商品总额的实战案例:
<?php // 定义一个函数来计算单个商品的总额 function calculateItemTotal($item) { // 获取商品价格和数量 $price = $item['price']; $quantity = $item['quantity']; // 计算总额 $total = $price * $quantity; // 返回总额 return $total; } // 获取购物篮中的商品 $shoppingCart = [ ['name' => 'Apple', 'price' => 1.00, 'quantity' => 2], ['name' => 'Orange', 'price' => 1.50, 'quantity' => 3], ['name' => 'Banana', 'price' => 2.00, 'quantity' => 1] ]; // 计算总额 $totalSum = 0; foreach ($shoppingCart as $item) { // 使用 call_user_func() 调用 calculateItemTotal() 函数 $itemTotal = call_user_func('calculateItemTotal', $item); // 将商品总额添加到总和中 $totalSum += $itemTotal; } // 输出总额 echo $totalSum; // 输出:8.50 ?>
这种方法提供了更大的灵活性,因为它允许您动态地指定要调用的函数并传递参数。