我以前从未在我的代码中使用过 Try-catch,但现在我需要这样做,而且我似乎不太了解它的工作方式。我在使用explode的字符串中有数据:
$groupNumbers = array();
$str = $dataGroups['groups'];
$groupNumbers = explode(",", $str);
$count = count($groupNumbers);
然后我想检查每个元素是否都是数字的,如果是我继续进行数据库查询,否则我想中止操作 ant 返回一些错误。
这是我正在做的事情:
for ($i = 0; $i < $count; ++$i)
{
try
{
is_numeric($groupNumbers[$i]);
}
catch (Exception $ex)
{
process_exception_to_json($ex);
}
}
如果 evrery 元素是数字,我会构造一条活动记录来执行 SQL:
$this->db->insert_batch('users_groups', $datas);
显然是这样写的,即使一个元素不是数字的,动作也不会中止,并且 insert_batch 仍然使用无效值执行,这是我想要避免的。这样做的确切方法是什么,所以我可以得到一个异常,同时中止操作。谢谢
勒隆