我正在尝试在echo中设置else条件。
<?php if(count($category['children'][$i]['children_level2'])>0){ ?>
<a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?>
<?php echo "<?php if ($direction == 'ltr') { ?><span class='fa fa-caret-right'></span><?php } else { ?><span class='fa fa-caret-left'></span><?php } ?></a>";
} else{ ?>
<a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a>
<?php }?>
但是,下面的条件在上面的代码中不能正常工作。这里出了什么问题?
<?php if ($direction == 'ltr') { ?><span class='fa fa-caret-right'></span><?php } else { ?><span class='fa fa-caret-left'></span><?php } ?>
在php代码中编写php代码
<?php if(count($category['children'][$i]['children_level2'])>0){ ?>
<a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?>
<?php if ($direction == 'ltr') { ?><span class='fa fa-caret-right'></span><?php } else { ?><span class='fa fa-caret-left'></span><?php } ?></a>
<?php } else{ ?>
<a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a>
<?php }?>
试试这个,你应该检查值然后打印想要的结果
<?php if(count($category['children'][$i]['children_level2'])>0){ ?>
<a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?>
<?php if ($direction == 'ltr') { print "<span class='fa fa-caret-right'></span>"; } else { print "<span class='fa fa-caret-left'></span>"; } ?></a>
<?php
} else { ?>
<a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a>
<?php }?>
你不能在if语句中添加if但是你可以在if语句中添加echo,像这样:
<?php if(count($category['children'][$i]['children_level2'])>0){ ?>
<a href="<?php echo $category['children'][$i]['href']; ?>">
<?php echo $category['children'][$i]['name']; ?>
<?php if ($direction == 'ltr') { echo"<span class='fa fa-caret-right'></span>"; } else { echo "<span class='fa fa-caret-left'></span> </a>"; }
} else{ ?>
<a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a>
<?php }?>
看起来您试图回显实际的PHP代码,而不是该代码的结果。
将行改为<?php if ($direction == 'ltr') { ?><span class='fa fa-caret-right'></span><?php } else { ?><span class='fa fa-caret-left'></span><?php } ?></a>;
因为您是在条件中自然地表达HTML,所以不需要回显任何内容。