代码之家  ›  专栏  ›  技术社区  ›  Kagiso Marvin Molekwa

PHP中的分号是可选的吗?

  •  0
  • Kagiso Marvin Molekwa  · 技术社区  · 6 年前

    我知道PHP,就像java和C++一样,使用分号来终止语句,所以我想知道使用PHP与HTML内联。我想知道为什么省略分号有效。

    <?php if(true): ?>
      <p>Hello World !!!</p>
    <?php endif ?>
    

    注意:后面没有分号 endif 在里面 <?php endif ?>

    1 回复  |  直到 5 年前
        1
  •  8
  •   Spudley Pat    6 年前

    一般来说,我总是建议使用分号,但是你说得对,在这个例子中可以去掉分号。

    只有当语句后面紧跟着一个结束的PHP标记时,才可以在语句后面去掉分号——ie ?>

    PHP文档中记录了这一点: http://php.net/manual/en/language.basic-syntax.instruction-separation.php

    这是该语言早期的一个特性,旨在使模板化代码更易于阅读。

    与Javascript不同,没有其他允许删除分号的情况。

        2
  •  1
  •   Marius Gri    5 年前
    <?php if(true): ?>
      <p>Hello World !!!</p>
    <?php endif ?>
    

    <?php
    if (true):
     echo "  <p>Hello World !!!</p>"
    endif;
    ?>
    

    这是

    <?php
    if (true) {
     echo "  <p>Hello World !!!</p>"
    }
    ?>
    

    根据标准(PSR),在单行代码块中不应使用分号 https://www.php-fig.org/psr/

    *不提周围的断线

    推荐文章