2017-12-27 12 views
0

나는 텍스트 파일을 읽고 사용자가 단어와 그 작업을 완벽하게 검색 할 수 있도록 PHP 코드를 가지고있다. 사용자가 검색을하고 시스템이 존재 행 번호와 요청 된 문자열을 표시 할 경우PHP를 사용하여 여러 TEXT 파일을 읽고 파일 이름을 표시하는 방법은 무엇입니까?

파일의 내용이 아랍어

입니다.

내가 지금 원하는 것은 시스템이 여러 텍스트 파일을 읽도록하고 사용자가 단어를 요청하면 시스템은 사용자 요청을 발견 한 파일의 이름을 표시합니다.

이게 가능하며 내가 100 개의 파일을 가지고 있다면이 과정이 얼마나 걸릴까요?

코드 :

<?php 

$myFile = "arabic text.txt"; 

$myFileLink = fopen($myFile, 'r'); 

$line = 1; 

if(isset($_POST["search"])) 
{ 
    $search =$_POST['name']; 

while(!feof($myFileLink)) 
{ 
    $myFileContents = fgets($myFileLink); 
    if(preg_match_all('/('.preg_quote($search,'/').')/i', $myFileContents, $matches)) 
    { 

     foreach($matches[1] as $match) 
     { 
      echo "Found $match on Line $line"; 
     } 

    } 

    ++$line; 

} 

} 

fclose($myFileLink); 

//echo $myFileContents; 
?> 

<html> 
    <head> 
    </head> 
    <meta http-equiv="Content-Language" content="ar-sa"> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
    <body> 
    <form action="index.php" method="post"> 
      <p>enter your string <input type ="text" id = "idName" name="name" /></p> 
      <p><input type ="Submit" name ="search" value= "Search" /></p> 
    </form> 
    </body> 
</html> 
+0

$files = scandir('/mydir/here/'); foreach($files as $file) { if (strpos($file, '.txt')) { //dosomething } } 
, 내가 PHP를 사용하고이 답변 https://stackoverflow.com/a/17231293/6582942 – pravindot17

+0

@ pravindot17 첫째을 참조하시기 바랍니다 그리고 난 텍스트의 내용을 읽을 필요 파일. –

+0

그 이유는 내가 리눅스의 grep을 실행하는 PHP의 exec 함수를 제안 이유 – pravindot17

답변

0

그래서 당신은 당신이 원하는 내용을 반환하는 함수, 함수로 현재 작업 코드를 삽입해야합니다.

function readFile($fileName) 
{ 
    // ...your code 
    return $yourMessage; 
} 

$fileNames = array("file1.txt", "file2.txt"); 
$result = array(); 
foreach($fileNames as $name) 
{ 
    $message = readFile($name); 
    $result[$name] = $message; 
} 

이제 $ 결과를 반복하여 원하는 방식으로 인쇄 할 수 있습니다.

+0

나는 시스템이 원하는 디렉토리에있는 텍스트 파일을 읽고 싶다. 매일 파일이 추가 될 것이기 때문에 파일의 이름을 하드 코드하고 싶지는 않다. . –

0

모든 파일을 하나의 배열로 가져 오려면 scandir ('/ mydir /')을 사용할 수 있습니다.

것은 내가 간부 기능에 grep 명령을 제안