使用 HTML 读取文本文件


Read Text File With HTML

我想知道是否有办法读取文件的所有内容并将其存储在HTML中的变量中。

通过将PHP与HTML一起使用,我得到了一些不起作用的代码:

<html>
    <body>
        <div>
            <?php echo "Current Prodi-G version: " . file_get_contents('/version.txt');?>;
        </div>
    </body>
</html>

此代码在网页的解析和显示中呈现,但只显示一个;...

HTML不是一种编程语言。这是一种标记语言。它只是描述了事物的外观和在网页上的布局。

PHP是一种编程语言,而不是标记语言。它执行逻辑并能够处理文件和其他内容。

您需要两者结合起来,才能做您想做的事情。并且有很多好的HTML + PHP教程可以帮助您。搜索谷歌和这里。

这将使您在文件中的每一行:http://www.ibm.com/developerworks/library/os-php-readfiles/

之后,您可以根据需要对其进行格式化和解析。我建议花一些时间在 php.net(http://php.net/manual/en/tutorial.php(或谷歌上搜索信息。有人做了你想做的事,我几乎是肯定的。

编辑:

<html>
    <body>
        <script>
            <?php echo "Current version: " . file_get_contents('/version.txt');?>;
        </script>
     </body>
</html>

这是行不通的,因为它告诉 PHP 将版本的内容.txt放入页面的脚本标签中,或者更重要的是,将其准确地放在您调用 PHP 代码的位置。

为了显示它,PHP 在代码<?php ?>区域中生成的内容必须位于最终将显示的 HTML 标记中。

例如:

<html>
    <body>
        <div>
            <?php echo "Current version: " . file_get_contents('/version.txt');?>;
        </div>
    </body>
</html>

因为 HTML 标签<script></script>应该包含可见的 javascript 代码,而 <div></div> 是用于保存可见内容的通用标签。您的示例不起作用,因为它将所有输出放在页面的不可见部分而不是可见部分。

在 php 中,这很容易...

<?php
    $filename = fopen('document_name', 'r'); 
    $file = fread($filename, filesize('document_name'));
    echo $file; 
    fclose($filename);
?>

这是你要找的吗?

你也可以使用 file_get_contents(( 这甚至更容易...

编辑

查看您的编辑后,如果您只是尝试将"版本"输出到屏幕上,这就是您的文件应该的样子......

<html>
<body>
    <?php echo 'Current version: ' . file_get_contents('/version.txt'); ?>
</body>
</html>
使用脚本

标记告诉浏览器您将使用客户端脚本(又名(。Javascript。反过来,您不能简单地将语句"回显"到屏幕上。不要误会我的意思,尽管可以像这样使用javascript应用程序来做到这一点...

<html>
<head>
    <script>
        var text = <?php echo 'Current version: ' . file_get_contents('/version.txt'); ?>;
    </script>
</head>
<body>
    <script>
        document.write(text);
    </script>
</body>
</html>

。但这有点矫枉过正,除非你需要将值存储在 JavaScript 变量中。为了解决你脑海中的困惑,PHP脚本与Javascript脚本完全分开(尽管它们可以一起使用(,并且必须作为单独的实体使用,即使它们都可以在文档中的任何位置使用。

我想知道你是否指的是这样的东西:

<!doctype html>
<html>
<head>
<script>
var html = "<?php echo file_get_contents('/tmp/somefile.dat');?>";
</script>
</head>
<body>
<h1>Sample</h1>
</body>
</html>
<html>
<body>
    <?php echo 'Current version: ' . file_get_contents('/version.txt'); ?>
</body>
</html>

是您问题的正确解决方案。可能不清楚的是,您必须将文件另存为".php"文件,而不是".html"文件。

因此,要使此示例正常工作,您必须将文件命名为:version.php(您描述了您的问题,因为您的网页仅显示分号(,如果您将文件命名为 version.html并且您在结束 php 标签后有错位的分号,就会出现这种情况。

正确:?>
错误:?>;