2012-09-06 40 views
7

我有很多html文件,现在我想用一些php代码逐个调用每个文件。但每当我尝试运行用于从文件夹调用这些html文件的php代码时,它都不起作用。如何在PHP代码中嵌入html文件?

1.html view 
    2.html view 
    3.html view 

因此,1,2和3是html文件,现在通过点击查看用户应该被引导到链接。我如何解决在PHP中整合html文件的问题,以便这些文件将以视图选项逐个显示给用户。每当用户点击查看时,用户都会看到html页面。

注意:在使用XAMPP服务器在Windows7 IM

任何建议将不胜感激...

+1

告诉我们您的代码 –

+1

您的意思是要显示某个特定目录下的html文件吗?或者只包括()他们? – jtheman

+0

@jitheman我想在php中嵌入html文件 – sp2

回答

25

使用include PHP function每个HTML文件。

例如:

<?php 
// do php stuff 

include('fileOne.html'); 
include('fileTwo.html'); 

?> 
+0

如果html文件代表真正的静态内容,你应该使用[readfile()](http://php.net /manual/en/function.readfile.php)。如果html文件发生包含PHP指令(如'<?'),则include将尝试将它们作为PHP代码进行交互。 'readfile'只会将内容返回给浏览器。 – Kip

0

看到这里Loop code for each file in a directory

知道如何循环的文件夹中的文件,然后只是一个呼应带链接的标签

+0

谢谢....但问题是,当我尝试在PHP中运行一个HTML文件,它不起作用。所以,我试图通过键入链接http://localhost/3.html单独打开HTML文件使用网络浏览器,但它的力量工作 – sp2

+0

你甚至不能通过简单浏览它打开文件?这是你在说什么? –

+0

雅当我尝试使用本地主机打开它,因为我使用XAMPP服务器。它不工作 – sp2

1

使用opendir并遍历文件。

例子:

<?php 

    $dir = "/tmp"; 
    $dh = opendir($dir); 
    while(false !== ($filename = readdir($dh))) 
    { 
     echo $filename . ' <a href="' . $dir . '/' . $filename . '">view</a>'; 
    } 
?> 
1

小改进,接受的答案:你应该更喜欢readfile()include()require()非PHP文件。这是因为include()require()将作为PHP代码进行处理,因此如果它们包含类似PHP的内容(如<?),则它们可能会生成错误。或者更糟的是,一个安全漏洞。 (当然,如果您也显示用户提供的HTML,但仍存在潜在的安全漏洞,但它们至少无法在服务器上运行代码。)

如果.html文件实际上包含PHP代码,你应该适当地命名它们。

<?php 
// do php stuff 

readfile('fileOne.html'); 
readfile('fileTwo.html'); 

?>