我正在研究一个条件,我不明白,因为其中一个条件默认设置为true,之前没有设置变量,有没有人告诉我这意味着什么?
$pagina= Pagina::findOrFail($datos->idpagina);
switch ($datos->tipodato)
{
case 'logo':
if(true) //??
{
$datos->logo = urldecode($datos->logo);
$datos->logo = str_replace(' ', '+', $datos->logo);
$datos->logo = str_replace("data:image/png;base64,","",$datos->logo);
$datos->logo = str_replace("data:image/jpg;base64,","",$datos->logo);
$datos->logo = str_replace("data:image/jpeg;base64,","",$datos->logo);
$pagina->logo =$datos->logo;
}
else
{
$pagina->logo =$datos->logo;
}
$nombreimagen="img".$datos->idpagina.".png";
file_put_contents(public_path()."/imagenes/{$nombreimagen}",
base64_decode($datos->logo));
$pagina->archivologo=$nombreimagen;
break;
答案 0 :(得分:2)
if (true)
表示后续案例始终执行,您可以保存删除else
案例(以及条件本身)。大多数情况下,这是为调试案例或重构插入的,有人忘了删除冗余if条件。
答案 1 :(得分:2)
这意味着if语句中的代码总是被执行,而else-block中的代码永远不会。
一个常见的原因是它曾经是一个基于变量的条件,但是程序员已将其停用,但保留了else语句以使其更容易恢复。