在多个PHP文件之间共享HTML代码

时间:2018-04-29 12:08:28

标签: php

我有多个文件在它们之间共享HTML代码的某些部分,所以为了避免代码重复并让我的生活更轻松,我将这个重复的HTML代码放在一个文件中({{1}然后,每当我需要这段代码时,我都会使用shared-code.php将它包含在HTML结构中。

但是,我不确定这是否是最好的方法,并且想询问您的意见。

如果这是一种方法,那么请您建议我一种方法来保护这些文件免受直接访问,但仍然可以从require_once公开访问这些文件。

1 个答案:

答案 0 :(得分:0)

  

请建议我保护这些文件免受直接访问的方法,   但仍然可以从公开访问   require_once

添加变量,如果直接访问它,则无法设置:

<强>共享code.php

<?php
if (!$running) die('No direct access');

//
code continues...

然后在您的主应用程序中设置$running

<?php
$running = true;
require_once('shared-code.php');

//
code continues...

像Joomala和其他人这样的项目使用这样的方法,但使用常量。

defined('_JEXEC') or die('Restricted access');

https://docs.joomla.org/JEXEC

就个人而言,我不喜欢。

正如@JimL所建议的那样,你也可以移动你不希望在webroot之外访问的代码。

因此,如果您构建应用程序,以便拥有publichtml文件夹,那么您可以设置网络服务器,以便您的webroot或将文件移动到一个级别,例如,放置它们在/var/www

你也可以使用带有.htaccess的{​​{1}}个文件,但说实话,期待像apache2这样的特定服务器,而不是nginx或者当前周围的大量优质HTTP服务器,或者摆弄你的服务器配置不可移植。

相反,构建应用程序使其具有单一入口点front controller pattern),然后一切都受到服务器重写的保护。