Home  >  Q&A  >  body text

PHP的一个IF语句总也写不好。

在此之前是读取数据库代码,此处略去。。。
然后到这里,就不会了。。

<? if $row['name]="" or is_null($row['name']);?>
<em class="bold">找人起个名字吧!</em>
<?else?>
<em class="bold">这个名字还不错么</em>
<? end if?>

问题一:第一行这样写报错为:

PHP Parse error: syntax error, unexpected '$row' (T_VARIABLE), expecting '(' in I:\php\index.php on line 119

其他行有没有错暂时未知

问题二:有没有快捷的写法,即都按PHP写,而不是和HTML混写在一起,貌似这样的执行效率会很差。

好吧,我承认这是从asp改过来的,刚学PHP,也不知道去哪里查这些问题。

大家讲道理大家讲道理2771 days ago595

reply all(5)I'll reply

  • 怪我咯

    怪我咯2017-04-10 17:02:40

    else漏了冒号
    endif中没有空格

    reply
    0
  • 黄舟

    黄舟2017-04-10 17:02:40

    if最后的分号改成冒号,然后在endif后面加上分号。

    reply
    0
  • 怪我咯

    怪我咯2017-04-10 17:02:40

    if 后面的条件要用括号包起来

    <? if ($row['name']="" or is_null($row['name'])): ?>
    <em class="bold">找人起个名字吧!</em>
    <? else: ?>
    <em class="bold">这个名字还不错么</em>
    <? endif; ?>
    

    if 后面的条件要用括号括起来,$row['name],这里少了一个单引号,else要改成else:,end if 要改成 endif;

    reply
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-10 17:02:40

    $row['name]="" 这里的name少一个'引号 , 还有这个判断里不应该是两个等号么?

    PHP做web开发 混编是难免的。也可以用模板引擎,只不过现在你还是把混编弄理解吧。

    题主,我怎么感觉你这是用的CI框架。

    reply
    0
  • 阿神

    阿神2017-04-10 17:02:40

    快捷的写法就是模板引擎了,大部分现在框架都有。比如laravel的Blade

    @if($row['name]="" or is_null($row['name']))
    <em class="bold">找人起个名字吧!</em>
    @else
    <em class="bold">这个名字还不错么</em>
    @endif

    reply
    0
  • Cancelreply