我正在尝试编写一个简单的脚本,其主要目的是列出服务器上目录中的所有文件并将其保存为数组。随后客户端脚本会进行一些操作,例如“提取”文件扩展名、名称等。
现在我遇到了一个小问题。也就是说,脚本确实列出了指定目录中的所有文件,但返回的数据是 JavaScript 无法读取的。
let data = <?php
if ($handle = opendir('./share')) {
while (false !== ($entry = readdir($handle))) {
if ($entry != "." && $entry != "..") {
echo "$entry ";
}
}
closedir($handle);
}
?>;
返回的数据如下所示:
some_image.png other_text.txt meme.gif
可能每个人都知道,如果我们在任何地方使用 JavaScript,它就会崩溃...... 有什么方法可以将这段数据转换为如下所示的实际数组吗?
['some_image.png','other_text.txt','meme.gif']
最佳答案
扩展代码:将文件条目写入数组而不是 echo
立即使用它们。然后json_encode
该数组最后 echo
它在你的<script>
标签
<?php
$files = array();
if ($handle = opendir('./share')) {
while (false !== ($entry = readdir($handle))) {
if ($entry != "." && $entry != "..") {
$files[] = $entry;
}
}
closedir($handle);
}
$json = json_encode($files);
// var_dump($json);
?>
<script>
let data = <?php echo $json ?>;
</script>
关于javascript - 使用 PHP 和 JavaScript 列出目录中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59436702/