PHP搜索引擎在txt文件中

时间:2013-04-29 14:12:48

标签: php search-engine

我需要用PHP创建一个基本的搜索引擎来搜索.txt文件中的ID,但仍然不知道该怎么做,我是新的编程:( 任何帮助将非常感激。 这是我到目前为止的代码。

 <style type="text/css">  
 td { 
        font-family:verdana,arial; 
        font-size:8pt;
        border-color:#ccc;  }  
 .header{ 
        background-color:66b50b; 
        border-style:solid; 
        border-color:#32661e; 
        border-width:1px;
        font-weight:bold; 
        font-size:10pt;
        color:ffffff;   }    
  .estiloceldaw{ 
        background-color:ffffff; 
        border-style:solid; 
        border-color:666666; 
        border-width:1px;  }     
  .estiloceldag{ 
        background-color:ddeeff; 
        color:333333; 
        font-weight:bold; 
        font-size:10pt;  }  
</style> 
<?php

      $criterioid=$_POST["id"]; 
      echo    $criterioid;
      $critrionombre=$_POST["nombre"]; 
      $catalogo= array();
     $datospelicula =  array("clave","titulo","sinopsis","genero","anio","precio","status");

 function TraeCatalogo()
 {

        $numregistros=0;
        $ar=fopen("catalogo.txt","r") or
        die("No se pudo abrir el archivo");   
 while (!feof($ar))   {  

 $linea=fgets($ar);
 $catalogo[] = $datospelicula =explode("|",$linea);

 $numregistros=$numregistros+1;   
 }
 fclose($ar);

 echo "numero de registros".$numregistros;

 return $catalogo; 
}


 function Muestralistado($catalogo,$criterioid,$criterionombre)
 {

  $tabla= "<table><tr colspan=6><td>Clave</td><td>Nombre</td><td>Sinopsis</td><td>Genero</td><td>Año</td><td>precio</td><td>Status</td></tr>";

  if (!isset($criterioid) || trim($criterioid) == "") 
  {
   foreach ($catalogo as $k => $pelicula) 
   {
    $clave=$catalogo[$k][0];
    $titulo=$catalogo[$k][1];
    $sinopsis=$catalogo[$k][2];
    $genero=$catalogo[$k][3];
    $anio=$catalogo[$k][4];
    $precio=$catalogo[$k][5];
    $status=$catalogo[$k][6];
    $tabla.="<tr><td>".$clave."</td><td>".$titulo."</td><td>".$sinopsis."</td><td>".$genero."</td><td>".$anio."</td><td>".$precio."</td><td>".$status."</td></tr>";}
   }else
   {
    $tabla.="<tr><td colspan=6>hay un criterio de busqueda!</td></tr>";
   } $tabla.="<table>"; 

   echo $tabla;
}

$catalogo2=TraeCatalogo("wa"); 
Muestralistado($catalogo2); 
//var_dump($catalogo2);
?>

<html> 
<body> Buscar Pelicula: <form action="index.php" method="post">
Nombre: <input type="text" name="nombre"> id: <input type="text" name="id"> <input type="submit">
</form>
</body> 
</html>

1 个答案:

答案 0 :(得分:0)

$foundText = array(); // Create an array to store your found words

然后,一旦你打开文件:

  while (!feof($ar))
    {
        $dataBuffer = fgets($ar); // Load some text into buffer
        $explodedText = explode($dataBuffer, "|");

        foreach($explodedText as $item){
            if(strpos($item, $clave) != false)
                $foundText[] = $dataBuffer ;
            }
        }
    }

然后你可以遍历每个找到的项目:

foreach($foundText as $textItem){
    echo 'Word found: ' . $textItem . ' <br>';
}