我有以下代码,如果它们超出条件,则会显示两个图像,但是当我将它们置于不工作的状态时。我究竟做错了什么?我正在使用YII框架......
<?php if ($avatar) { ?>
<img src="<?php echo $avatar; ?>" class="avatar" alt="" />
<?php } else { ?>
<img src="<?php echo Yii::app()->theme->baseUrl; ?>/images/no-image.jpg" width="186px" class="avatar" alt="" />
<?php } ?>
答案 0 :(得分:1)
if ($avatar)
询问是否定义了$ avatar(即存在)。
如果定义了$ avatar,则会显示<img src="<?php echo $avatar; ?>" class="avatar" alt="" />
。
如果未定义$ avatar,则会收到警告Notice: Undefined variable: avatar
以下代码使用PHP函数isset()(如Cole Johnson所述)
<?php
$flag = 0;
//Try commenting out line below to illustrate
$avatar =1;
if (isset($avatar)) {
$flag =1;
}
if ($flag == 1){
?>
<img src="<?php echo $avatar; ?>" class="avatar" alt="" />
<?php }
else { ?>
<img src="<?php echo Yii::app()->theme; ?>/images/no-image.jpg" width="186px" class="avatar" alt="" />
<?php
} ?>