我在PHP中是nob,我在php中运行一些函数时遇到问题。我会尽量让我理解
我有两个功能:
1. Create_repor1。
2. Create_report2。
两个函数执行不同的操作,订单必须始终运行一个,然后运行另一个。这些函数处理来自SAP的大量信息,存储在我的MySQL数据库中。而我的问题是,当你运行第一个函数时出现问题并且无法执行第二个函数。
我想到的是当第一个函数失败时执行wing,我想开始运行,第二个结束,第一个返回到生成错误的位置。
function insert_data
take array_sap
limit = cout(array_sap)
while array_sap > = limit
#Begin implementing where we were.
run function_1(array_sap) #If here an error that runs through to 'function_2'.
run function_2(array_sap) #If everything ran well to continue again with 'function_1'.
end
这可能吗?
答案 0 :(得分:1)
这不可能做到这一点。如果生成错误,您可以做的最好的事情是捕获它并在失败点运行第二个函数,然后尝试再次运行它。像这样:
function Create_repor1(){
$retried = 0;
while ($retried < 3)
{
$retried++;
try
{
// do some stuff
$retried = 3;
}
catch( Exception $e )
{
$retried++;
Delete_report2();
}
}
}
$重试while块是必要的,只让它尝试一次,而不是更多。
答案 1 :(得分:0)
尝试catch能够捕获一些致命错误,阻止脚本终止并继续执行其他代码。