Suche

Hallo,
Ich möchte eine Sucher erstellen.
Ich habe einen Ordner wo gesucht werden soll. Es sollen die Namen der einzelnden Dateien gesucht werden und aufgelistet werden. z.B. gebe ich in das Suchfeld hallo ein. Darauf wird in dem Ordner gesucht und findet die Datei hallo.php. Diese Datei soll dann auf der Seite mit einem Bild angezeigt werden. Wie kann man soetwas machen?=

Du liest den Ordnerinhalt aus:

<?php $verzeichnis = opendir('simon/'); while($datei = readdir($verzeichnis)) { // $datei enthält den Namen aller Dateien } ?>

Dann durchsuchst du $datei mit strstr():

<?php foreach ($datei as $name) { if(strstr($name,$suchbegriff)) { echo $name.","; } } ?>

Dann werden (wenn vorhanden) alle Dateinamen in diesem Schema ausgegeben:

hallo.php,hallo.html,hallo.css,

Ich hoffe ich konnte helfen

function checkMatch(&$item, $key, $search)
{
   if(strpos($item, $search)==false)
     unset($item);
}

$folder = scandir(".");   //Noch zu ändern! scandir listet auch Verzeichnisse auf...
$suche = "testDatei";

array_walk($folder, 'checkMatch', $suche);
print_r($folder);

Müsste soweit funktionieren :wink:

Hm, darf ich mal was dazu sagen? TechnoLogiY, dein Ansatz funktioniert nicht, da $datei im ersten Snippet jedesmal überschrieben wird.

@michi7x7: Referenzen funktionieren so nicht, wird also auch nicht klappen.

$array=array(0 => "Hallo", 1 => "Hello", 2 => "Hillo");
unset($array[1]);
print_r($array);

gibt bei mir

Array
(
    [0] => Hallo
    [2] => Hillo
)

aus…

//EDIT: OK, hab mich geirrt…

@Scram: phpbase.bplaced.net/testpage.html