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
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
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>?
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>?