0

我正在修改 wordpress 安装中子主题的 functions.php 文件。

在某些时候,我想要一个函数来生成 html,然后作为正常函数继续。

我编写代码的“正常”方式是这样的:

<?php
/**
 * Child Theme
 * Author: Seb
**/

function html_output() {
 # some php code here
 ?> // closing php delimiter
 // some html code here
<?php } # opening php delimiter to close the function
# more php code here

但是,在网上看别人的代码时,最后两行是这样的:

<?php } ?> // opening php delimiter to close the function and then closing delimiter
<?php # random (?) extra php delimiter I don't get the meaning of

编辑器(Coda 和 Sublime Text 2)没有抱怨我的代码,但它不起作用。有人可以向我解释为什么必须这样才能正常运行吗?

编辑:

为了让我的问题更清楚,我不明白如何

<?php }

不同于

<?php } ?>
<?php
4

1 回答 1

0

虽然我不确定你的问题,但我脑子里有两件事

  1. 每个开发人员的编码风格都不同(同时保持代码健康,并根据该特定框架上使用的标准)
  2. 这是一种做法,我经常注意到您OPENED <?PHP在代码中总是有一个标签,我认为我在某处读到的原因是,它可以帮助我们避免HEADERS ALREADY SENT ON LINE .....错误
  3. 此外,这个打开<?php的标签表示您有一个 php 文件,如果您想在此之后添加任何代码,您必须 牢记遵循PHP 标准/规则

好的

对于php的观点

<?php } ?>
<?php

<?php }

两者都可以,并且它们都符合 php 规则,但是当涉及到 WP 时,您可以通过包含 3 个或多个文件来呈现最终的 html,有时,它会变得有问题....考虑以下情况

头文件.php

<?php }

现在,contents.php

<?php

//and some php code goes here

比如说,要加载页面,两个文件都会合并,所以最终输出会是这样的

 <?php }
<?php

    //and some php code goes here

只是想用一个例子来解释你的情况,而不是具体的你......

于 2013-10-12T16:48:32.273 回答