我以前使用过PHP,但主要涉及一些实际涉及输出HTML的小细节。我更像是一个前端人。现在,我正在构建一个小规模的网站,该网站的页眉、页眉和页脚有很多重复,但内容有所不同(几乎是典型的"模板"风格设计)。我不确定在这种情况下应该如何处理依赖关系。我有变量,我有函数,我有include和requires。但是去哪儿了?
例如。我有一个config.php
文件,其中包含两个经常使用的全局静态变量(例如$home
,它是基本url——这对于在子目录中进行本地测试是必要的)。我需要将这个配置文件放在每个其他PHP文件的顶部。我觉得应该可以吧?
但接下来:如何处理每页都在变化的全局变量。简单的例子:假设我在page.php
:中有这个代码
<?php include "header.php"; ?>
和header.php看起来像这样:
<header>
<h1><?php echo $pageTitle; ?></h1>
</header>
将该页面的值放入page.php
中是否同样简单?像这样:
$pageTitle = "I like bananas";
<?php include "header.php"; ?>
这让我很担心,因为如果你有很多这样的东西,PHP就会变得丑陋:过了一段时间,你的基本PHP文件(page.php
)就会充满变量。显然不是成千上万,但我想我的项目可能有十几个。这是一个"问题"还是通常会发生的事情?如果不常见,那么我应该如何在PHP中处理变量?
那么函数呢?例如,如果我想在header.php
中的某个项中添加一个类,如果一个变量是5
(显然真实的例子更详细),我可以编写这样的函数:
function checkBananaAmount($int) {
if ($int == 5) echo 'class="eat-bananas"';
}
并这样称呼它:
<div <?php checkBananaAmount($myBanana); ?>></div>
问题是,我会把这个函数放在一个单独的文件中吗(类似于Wordpress的functions.php
,还是只把它放在header.php
中?如果是前者,这是否意味着我必须在每一页中都有require "functions.php"
和其中一个函数?
正如你所看到的,我想知道PHP项目的基本结构是什么:如何对变量和函数进行排序,如何在不损失生产力和保持效率的情况下保持事物的有序组织等等。
构建项目的方法有很多,包括是否包含框架(可能需要时间学习,但随着项目的发展会带来巨大好处)。
这些天,我不会一开始就写一个php项目。
作为一个前端的人,我想你知道诸如angular或knocket之类的框架。
一个好的起点可能是像Slim这样的简单框架http://www.slimframework.com/
还有像Twig这样的模板系统http://twig.sensiolabs.org/
即使你要从头开始的方法,你也应该好好看看PHP the Right Wayhttp://www.phptherightway.com/