这个条件意味着什么?

时间:2017-03-17 13:28:27

标签: php if-statement switch-statement conditional

我正在研究一个条件,我不明白,因为其中一个条件默认设置为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;  

2 个答案:

答案 0 :(得分:2)

if (true)表示后续案例始终执行,您可以保存删除else案例(以及条件本身)。大多数情况下,这是为调试案例或重构插入的,有人忘了删除冗余if条件。

答案 1 :(得分:2)

这意味着if语句中的代码总是被执行,而else-block中的代码永远不会。

一个常见的原因是它曾经是一个基于变量的条件,但是程序员已将其停用,但保留了else语句以使其更容易恢复。