php type error,php – 如何捕获Uncaught TypeError致命错误?

我有一个方法接受类型字符串的参数,但它们也可以为null.我怎么能抓住这个致命错误?

致命错误:未捕获的TypeError:传递给Employee :: insertEmployee()的参数5必须是string类型,给定null,

在以下代码中:

public function insertEmployee(string $first_name, string $middle_name, string $last_name, string $department, string $position, string $passport)

{

if($first_name == null || $middle_name == null || $last_name == null || $department == null || $position == null || $passport == null) {

throw new InvalidArgumentException("Error: Please, check your input syntax.");

}

$stmt = $this->db->prepare("INSERT INTO employees (first_name, middle_name, last_name, department, position, passport_id) VALUES (?, ?, ?, ?, ?, ?)");

$stmt->execute([$first_name, $middle_name, $last_name, $department, $position, $passport]);

echo "New employee ".$first_name.' '.$middle_name.' '.$last_name.' saved.';

}

try {

$app->insertEmployee($first_name, $middle_name, $last_name, $department, $position, $passport_id);

} catch (Exception $ex) {

echo $ex->getMessage();

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值