从案例语句中的另一个事例中获取值


get value from another case from case statement

我有两种情况,即添加协议和上传。我希望如何从案例上传到案例添加协议返回值$docid?请帮助我。谢谢

switch ($dowhat)
 {          
case "addagreement":
     $msgid = 30807; 
     $tenancyid = Common::getSeqNum(SEQ_TENANCYID);
$query = "begin transaction; ";
$query .= "insert into tenancy_suppdocs (tenancyid, docid, docsource )
values ($tenancyid, $docid, $docsource);";
     $query .= "commit;";               
Common::writeLog($modifyid, $moduleid, $pageid, 0, $query, CT_DB);        
$conn->Query($query); 
     $ok = "/itadmin/admin/agreementlisting.php";                   $param = $tenancyid; 
MessageBox::Info($msgid,$param,"",$ok);
Common::writeLog($modifyid, $moduleid, $pageid, $msgid, $tenancyid, CT_INFO);                       
//echo "1|".$msg;
exit(0); 
break;
case "upload":
//others source code
 $docid = Common::getSeqNum(SEQ_DOCID);

如果是这种情况,您需要在这两种情况下$docid,您可能需要在切换之前声明$docid

你的问题没有意义。

让我们试着弄清楚你到底想实现什么?

您了解switch...case只是if...elseif的另一种变体吗?

您的问题看起来像您有:

if ($var == 1) {
 $direction = 'to_the_right';
} elseif ($var==2) {
 $direction = 'to_the_left';
}

你问我们如何在$var==1时设置方向to_the_left.

所以一般来说是的,有很多选择如何做到这一点,但每个人都感到困惑你为什么需要它?

这里的逻辑流程有问题。