Salve,
con js e semplici librerie come hilitor.js, si dovrebbe riuscire ad implementare tutto ciò senza troppa fatica anche per una lista di cartelle generata con glob().
Non avendo controllato se la libreiria è ancora disponibile sul sito ufficiae, ne lascio qui una copia,
Esempio:
Codice HTML:
<span style="float:right;margin-right:10px;"><label>Cerca nella pagina: </label><input type="text" id="barra-ricerca" onkeyup="CercaParole('barra-ricerca','content')" placeholder="Cerca una parola..."></span>
<script>
function Highlight(inputid,targetid){
window.addEventListener("DOMContentLoaded", function(e) {
var newHilitor = new Hilitor(targetid);
newHilitor.setMatchType("left");
document.getElementById(inputid).addEventListener("keyup", function(e) {
newHilitor.apply(this.value);
}, false);
}, false);
}
function CercaParole(tab,lists) {
var input,filtro,lista,voci,x,i,testo;
input = document.getElementById(tab);
filtro = input.value.toUpperCase();
lista = document.getElementById(lists);
voci = lista.getElementsByTagName("li");
for (i = 0; i < voci.length; i++) {
x = lista.getElementsByTagName("a")[i];
testo = x.textContent || x.innerText;
if (testo.toUpperCase().indexOf(filtro) > -1) {
voci[i].style.display = "";
}else {
voci[i].style.display = "none";
}
}
}
Highlight('barra-ricerca','content')
</script>
<div id="content">
<ol>
<li><a href="">Mia_directory/Demo.php</a></li>
<li><a href="">Mia_directory/Demo1.html</a></li>
<li><a href="">Mia_directory/Demo2.php</a></li>
<li><a href="">Mia_directory/Esempio.html</a></li>
<li><a href="">Altro.php</a></li>
<li><a href="">Contatti.html</a></li>
<li><a href="">Pagina1.html</a></li>
<li><a href="">esempio-di-qualcosa.php</a></li>
<li><a href="">Pagina12.html</a></li>
<li><a href="">Qualcosa.php</a></li>
<li><a href="">About.php</a></li>
<li><a href="">Qualcosa_Non_Va.php</a></li>
</ol>
<div>
In pratica, con tale implementazione, con glob() si provvede solo a generare l'elenco delle cartelle, mentre al filtraggio della ricerca ci pensa il codice js.
Ora nell'esempio, per far prima, mi sono basato su un mio progetto e ho tralasciato la parte d'implementazione relativa a PHP, visto che poi non mi sembra sia un neofita in materia.
Se poi non paice l'idea o c'è dell'atro, nessun problema, chieda pure.
Cordial saluti.