OVH Cloud OVH Cloud

Moteur interne

1 réponse
Avatar
Philg42360
Bonsoir.
Je cherche à faire un moteur de recherche interne 'simple'.
Comment faire pour parcourir la liste des fichiers de mon site, organisé en
sous dossiers?
Comment récupérer les infos entre <title> et </title>?
Merci
--
--Philippe
Une commune de la Loire : http://panissieres.free.fr

1 réponse

Avatar
Bruno Desthuilliers
Philg42360 wrote:
Bonsoir.
Je cherche à faire un moteur de recherche interne 'simple'.
Comment faire pour parcourir la liste des fichiers de mon site, organisé en
sous dossiers?


function walk($root, $accumulator)
{
$d = dir($root)
while ($direntry = $d->read())
{
// sous *n*x, penser à zapper '.' et '..',
// et les éventuels dotfiles
if ($entry[0] == '.')
{
continue;
}

$fullpath = $root. "/" . $direntry;
$ftype = filetype($fullpath);
if ($ftype == 'file') {
// regarder si c'est du html
// je te laisse écrire la fonction
$ext = getFileExt($direntry);
if (isHtmlFileExt($ext)
{
// si oui, utiliser soit un parser,
// soit des regexp pour
// extraire les infos voulues
$accumulator[$fullpath] = extractData($fullpath);
}
}
else // directory
{
walk($fullpath, $accumulator);
}
} //while
$d->close();
}

Cette fonction peut être réécrite plus intelligement pour devenir
générique... Par exemple en lui passant une fonction de rappel.

Comment récupérer les infos entre <title> et </title>?


Soit avec des regexps, soit avec un parser HTML.


HTH
Bruno