【问题标题】:PHP Short Open Tag prints "1 "PHP Short Open Tag 打印“1”
【发布时间】:2016-05-24 07:45:23
【问题描述】:

当我使用 php short open tag 用 html 编写 php 代码时,它每次都打印 1。

<?= include_once 'includes/footer.php';?>

为什么会这样?

【问题讨论】:

  • 您对包含文件的语法错误。= 是
  • 不要使用 PHP 短标签,不推荐使用。
  • Do use short echo (&lt;?= ... ?&gt;) 标签在使用 PHP 进行模板化时,即嵌入 HTML 或任何您作为文本输出的东西。 在 PHP 5.4 及更高版本中推荐并始终可用。这比使用&lt;?php echo 容易得多。也许有趣? Why are “echo” short tags permanently enabled as of PHP 5.4
  • @RyanVincent 我使用 () 标记所有内容。但我决定从下次开始使用 (= ?>) 标签进行打印。感谢您的宝贵建议。

标签: php


【解决方案1】:

因为它返回 true。你需要使用include_once 不带短开标签,所以像这样:

<?php include_once 'includes/footer.php';?>

当你写一个开放的短标签时,像这样;

<?= include_once 'includes/footer.php';?>

你实际上是这样写的:

<?php echo include_once 'includes/footer.php';?>

这会在您的屏幕上显示“1”。

【讨论】:

    【解决方案2】:

    Php Short Tag 用于回显不包含文件的变量

    <?= ?> (echo short tags)
    

    看到这个http://php.net/manual/en/language.basic-syntax.phptags.php

    【讨论】:

      【解决方案3】:

      因为include_once返回TRUE,所以如果你打印它会显示"1"

      【讨论】:

        【解决方案4】:

        只需删除= 符号并尝试。简而言之,= 用于回显标签,由于您包含文件没有任何问题,因此它返回 1 并将被回显。

        【讨论】:

          猜你喜欢
          • 2012-11-11
          • 2011-03-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多