PHP - 如何加载HTML文件?

时间:2013-03-07 11:44:30

标签: php html

目前我有这样的文件

<?php
if(some condition)
{
    //Dont allow access
}
else
{
    echo "<html>My HTML Code</html>";
}
?>

但是我想做这样的事情来保持我的php文件简洁。

<?php
if(some condition)
{
    //Dont allow access
}
else
{
    //print the code from ..html/myFile.html
}
?>

我怎样才能做到这一点?

8 个答案:

答案 0 :(得分:15)

将您的html内容另存为单独的模板并将其包含在内

<?php
if(some condition)
{
    //Dont allow access
}
else
{
    include ("your_file.html");
}
?>

OR

<?php
if(some condition)
{
    //Dont allow access
}
else
{
    readfile("your_file.html");
}
?>

readfilefile_get_contents

更快且内存密集度更低

答案 1 :(得分:11)

您可以查看PHP Simple HTML DOM Parser,对您的需求似乎是个好主意!例如:

// Create a DOM object from a string
$html = str_get_html('<html><body>Hello!</body></html>');

// Create a DOM object from a URL
$html = file_get_html('http://www.google.com/');

// Create a DOM object from a HTML file
$html = file_get_html('test.htm');

答案 2 :(得分:3)

使用此代码


if(some condition)
{
    //Dont allow access
}
else
{
    echo file_get_contents("your_file.html");
}

OR


if(some condition)
{
    //Dont allow access
}
else
{
    require_once("your_file.html");
}

答案 3 :(得分:2)

<?php
if(some condition)
{
    //Dont allow access
}
else
{
    echo file_get_contents("your_file.html");
}
?>

这应该可以解决问题

或者,正如nauphal的回答所说,只需使用include()

即可

不要忘记,如果文件不存在,你可能会有一些麻烦(所以,也许,在包含或获取内容之前检查)

答案 4 :(得分:2)

扩展nauphal的答案以获得更强大的解决方案..

<?php
if(some condition)
{
    //Dont allow access
}
else
{
    if(file_exists("your_file.html"))
    {
       include "your_file.html";
    }
    else
    {
      echo 'Opps! File not found. Please check the path again';
    }
}
?>

答案 5 :(得分:2)

使用

等功能
include()
include_once()
require()
require_once()
file_get_contents()

答案 6 :(得分:1)

我认为你想要包含你的HTML文件,或者我误解了这个问题。

<?php
if(some condition)
{
    //Dont allow access
}
else
{
    include ("..html/myFile.html");
}
?>

答案 7 :(得分:-1)

方式1:

ob_start();
include "yourfile.html";
$return = ob_get_contents();
ob_clean();

echo $return;

方式2: 使用模板,如 CTPP Smarty 等...... Templaters用于将一些逻辑从php转移到模板,例如,在CTPP中:

$Templater -> params('ok' => true);
$Template -> output('template.html');
模板html中的

<TMPL_if (ok) >
ok is true
<TMPL_else>
ok not true
</TMPL_if>

同样的想法也在其他的模板中。 Templaters更好,因为它可以帮助您标准化模板并将所有原始逻辑发送给它们。