簡體   English   中英

PHP列出帶有<a>標簽的</a> Folder中的所有HTML文件

[英]PHP List all HTML files in Folder with <a> tags

我有一個html文件,列出了指向藝術家頁面的鏈接。 我想做的是使用php腳本來列出它們,而不是手動列出它們。 我還希望在每個對應的鏈接上方有一個縮略圖,但是我想在添加圖像之前先獲取鏈接。 我正在使用以下腳本,但無法正常工作:

<?php

$directory = "C:/wamp/myprojects/UMVA/web/includes/artists";
$phpfiles = glob($directory . "*.html");

foreach($phpfiles as $phpfile)
{
    echo '<a href="'.basename($phpfile).'">'.$phpfile.'</a>';
}

?>

包含html文件的文件夾是artist。 使用完整路徑名不起作用,僅使用“ artists”或“ / artists”作為路徑名也不起作用。 “藝術家”文件夾與帶有腳本的php文件位於同一目錄“ web”中。 我在這里想念什么?

這實際上應該可以解決問題:

$htmlFiles = glob("$directory/*.{html,htm}", GLOB_BRACE);

資源

如果您的目錄始終是'C:/ wamp / myprojects / UMVA / web / artists',我認為您可以嘗試使用scandir($ dirname)代替glob()。

不確定錯誤在哪里,但是您也可以以更可重用的方式使用SPL迭代器,例如GlobIterator。 GlobIterator返回SplFileInfo對象,該對象提供有關文件的許多有用信息。

這是文檔頁面:

這是一個例子:

$it = new GlobIterator('C:/wamp/myprojects/UMVA/web/artists/*.jpg');

foreach ($it as $file) {
    // I added htmlspecialchars too, never output unsafe data without escape them
    echo '<a href="' . htmlspecialchars($file->getPathname()) . '">' . htmlspecialchars($file->getFilename()) . '</a>';
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM