require is not defined - 创建目录中每个文件的数组

require is not defined - Create array of every file in a directory

这是我的 HTML

中内联 <script> 的片段

<script>
var fs = require('fs');
var images = fs.readdirSync('/i/cats/');
</script>

我的网站托管在 000webhost(免费版)

我的问题是这引发了 ReferenceError, require is not defined

明确地说,我试图在服务器上而不是在客户端上找到文件。

编辑 html 中的 JavaScript 是客户端,因此 require 不起作用。因此我必须使用 PHP,这是我目前得到的:

<?php
$images = array();
if ($handle = opendir('/i/cats')) {
    while (false !== ($entry = readdir($handle))) {
        array $images = array_push(array $images, $entry);
    }

    closedir($handle);
}
?>

好像是从服务器的根目录中获取目录。我该如何解决这个问题?

Javascript 是 运行 后端和前端的少数语言之一。这可能会造成混淆,因为有些教程会提供后端代码 (node.js)。

虽然它可以 运行 后端,但大多数虚拟主机不提供该选项。即使他们这样做了,在将其与前端 javascript.

结合之前,您也必须仔细阅读差异。

您目前正在尝试做的是 运行 客户端(网络浏览器)的服务器端代码。

为了 运行 这个正确,在你的电脑上安装 node.js 和 运行 节点脚本 (node script.js) .

如果您将文件托管在 apache 网络服务器上,则此 无法 工作。 000webhost 提供 apache。如果你真的想要这个,请使用 PHP。