PHP良好实践 - 回声使用

时间:2015-04-13 13:25:47

标签: php echo

我已经在c ++ / c / python中编程了很多年,但从来没有用过PHP的项目,我很快就会这样做。

1-我发现echo的用法有点烦人,特别是对于打印长篇文章。例如,如果我有一个想要echo网站冗余部分的功能,例如标题或导航菜单,那么哪种方法会更好。

<?php
    function PrintHeader() {
        [some php stuff, mysql queries, etc]
?>
        some HTML code
        more HTML code
<?php
        [some closing php stuff]
    }
?>

是否比

更好
<?php
    function PrintHeader() {
        [some php stuff, mysql queries, etc]

        echo 'some HTML code'
        echo 'more HTML code'

        [some closing php stuff]
    }
?>

我觉得第一种方法对我来说更简单,因为你可以在没有echo的情况下更轻松地修改HTML代码。我测试了它,它有效,但它是一个好方法吗?它有效吗?

2-使用函数回显网站的冗余部分,而不是复制/粘贴所有PHP文件中的冗余代码,这被认为是一种很好的编程习惯吗?

这些问题对某些人来说可能听起来很明显,但我对PHP中的代码管理经验不多。我总是喜欢尽可能减少代码冗余;它更容易维护。

2 个答案:

答案 0 :(得分:1)

首先,现在人们经常使用模板文件,这些模板稍后会被PHP解析。通常使用像Twig这样的模板语言。

  1. 我认为它的用户偏好更多,但我绝对更喜欢第一种变体,因为它更具可读性:)。

  2. 您应该明确地将网站的多余部分放入模板中,并在需要时将其包括在内:)。

答案 1 :(得分:1)

传统上,这种事情是通过PHP实现的,需要&#34;包含所需内容的文件。 e.g。

的header.php:

<div>some html</div>

您的主文件:

<?php
require 'header.php';
?>

这消除了在PHP中嵌入HTML的大部分需求。但是,更现代的方法是使用模板语言,它允许您完全托管HTML,以及简单的显示逻辑,如分支和循环。请查看http://www.phptherightway.com/#templating以获取有关这两种方法的更多建议。我强烈建议您阅读所有phptherightway.com,事实上 - 它不会花很长时间,可能会回答您可能遇到的许多其他问题。