嵌套 php “if” 语句的正确语法


Proper syntax for nested php "if" statements

我对php很陌生,我正在使用一个名为CMS Builder的软件,它使用MySQL数据库。该软件提供了一些用于显示数据的模板。这些模板使用这个"htmlencode",我和这个论坛上的其他人显然不知道它的目的。

我在数据库中有客户,有些有徽标,有些没有。在每种情况下,我都希望将客户名称或徽标链接到客户网站。我想检查徽标是否存在,如果存在,则显示它,如果没有,则显示客户端名称。

我已经编辑了我的代码,删除了我将"if"语句合并到其中的尝试,因为我在尝试这样做时创建了许多 php 错误。下面我有两个显示客户端名称和徽标的语句。我问是否有人会告诉我如何合并"if"语句(或者,也许有更好的方法使用"if"语句以外的其他东西)。我的代码:

<a href='<?php echo($clientRecord['clientweb'])?>'<h2><?php echo ($clientRecord['clientname']) ?> </h2></a>
<a href='<?php echo($clientRecord['clientweb'])?>' <img src="<?php echo $upload['thumbUrlPath'] ?>" width="<?php echo $upload['thumbWidth'] ?>" height="<?php echo $upload['thumbHeight'] ?>" alt="" /></a> 

根据 PSR-2 编码标准

<?php
if ($expr1) {
    // if body
} elseif ($expr2) {
    // elseif body
} else {
    // else body;
}

我想你打算这样:

echo $clientRecord['level'];
if ($clientRecord['clientlogo']=='') {  // there is no logo, just print the name
    echo '<h2>' .htmlencode($clientRecord['clientname']) . '</h2>';
} else { // print all logos
    foreach ($clientRecord['clientlogoupload'] as $index => $upload) {
        echo '<a href="' . htmlencode($clientRecord['clientweb']). '"><img src="' $upload['thumbUrlPath'] . '" width="' . $upload['thumbWidth'] . '" height="' . $upload['thumbHeight'] . '" alt="" /></a>';
    }
}

我个人从不使用if:endif foreach:endforeach语法。