在PHP中,array_merge()
函数用于合并两个或多个数组。如果源数组中的值不是数组,array_merge()
会抛出一个TypeError
异常。为了处理这种异常,你可以使用try-catch
语句来捕获并处理异常。
下面是一个示例:
$arr1, $arr2) { try { if (!is_array($arr1) || !is_array($arr2)) { throw new TypeError("Both arguments should be arrays."); } return array_merge($arr1, $arr2); } catch (TypeError $e) { echo "Error: " . $e->getMessage(); return []; } } $array1 = [1, 2, 3]; $array2 = [4, 5, 6]; $mergedArray = mergeArrays($array1, $array2); print_r($mergedArray); $invalidArray = [1, 2, 3]; $mergedArrayWithError = mergeArrays($invalidArray, $array2); print_r($mergedArrayWithError); ?>
在这个示例中,我们定义了一个名为mergeArrays
的函数,该函数接受两个数组作为参数。在try
块中,我们首先检查参数是否为数组,如果不是,我们抛出一个TypeError
异常。如果参数是数组,我们使用array_merge()
函数合并它们。
在catch
块中,我们捕获TypeError
异常并输出错误消息。在这种情况下,由于$invalidArray
不是一个数组,我们将返回一个空数组。