CodeIgniter报unexpected "endif"语法错误,验证条件代码求助
解决PHP中
unexpected endif语法错误 嘿,我一眼就揪出问题啦!你写的if语句后面多了个多余的分号;,这会让PHP误以为if逻辑到这里就结束了,后面的endif;自然找不到对应的if语句,所以才抛出了unexpected endif的错误。
你的原代码问题点就在这里:
<?php if($this->session->flashdata('errors')); ?> <!-- 这里的分号是祸根! --> <?= $this->session->flashdata('errors'); ?> <?php endif; ?>
只要把if后面的分号去掉,改成冒号:(或者直接用大括号包裹逻辑)就能解决问题啦:
修正方案1(保持endif风格)
<?php if($this->session->flashdata('errors')): ?> <?= $this->session->flashdata('errors'); ?> <?php endif; ?>
修正方案2(用大括号包裹逻辑)
如果你觉得冒号+endif的写法容易踩坑,也可以换成更常见的大括号写法:
<?php if($this->session->flashdata('errors')) { ?> <?= $this->session->flashdata('errors'); ?> <?php } ?>
两种写法都能正常运行,选你顺手的就行~
内容的提问来源于stack exchange,提问作者Muhammad Usman
相关产品推荐
相关产品推荐

