2017-06-01 76 views
1

首先是第一件事。我不是一個PHP開發人員這是我的工作所需要的東西,所以我接受了它,我正在學習,因爲我去如何用php搜索文件

現在我們有一個Excel表格,其中包含我們製作的項目的手冊鏈接這些必須手動更新。這可能需要幾小時才能完成。所以我正在試圖找到一種方法來縮短時間。

我可以讀取excel文件來獲取我需要使用javascript的信息,然後通過ajax調用將它發送到php。

我確定我得到了我需要的數據,並使它看起來如何在服務器上執行。

我一直在使用Google搜索整天試圖讓它工作,但我只是一直空着。

這是我在php文件中的代碼。

<?php 
$search = isset($_POST['urlData']) ? rawurldecode($_POST['urlData']) : "Nope Still not set"; 
$path = $_SERVER['DOCUMENT_ROOT']; 


$it = new RecursiveDirectoryIterator($path); 
foreach (new RecursiveIteratorIterator($it) as $file){ 
    $pathfile = str_replace($path,'',$file); 
    if (strpos($pathfile, $search) !== false) { 
     echo " pathFile var => ". $pathfile . "| Search var => " . $search; 
     $encodedUrl = rawurlencode($pathfile .$search); 
     echo 'link = http://manuals.myCompany.com/'. $doneUrl .'<br>'; 

    }else{ 

     echo "File does not exist => "; 
     echo $path. "<= Path " . $search."<= Search ". $pathfile . "<= Pathfile"; 

    } 
    break; 
} 

所以我需要給php文件手冊的名稱,看看它是否在目錄的某個地方。

此文件是存儲在手冊文件夾(manuals/searchManuals.php)中的searchManuals.php。我查找的文件與它位於同一目錄中的文件夾(manuals/english/jdv0/pdf/manual.pdf) 。

+0

你的帖子很混亂......你是否在尋找使用php在任何特定目錄中搜​​索文件的函數? – VK321

+0

對不起。我需要輸入一個手動名稱,並在服務器上找到它的許多文件中的一個。我只知道名字。並需要返回鏈接到該文件 – bigjim

+0

爲什麼你不使用這個驚人的圖書館? http://symfony.com/doc/current/components/finder.html第一個例子實際上是遞歸地搜索一個目錄 – Moein

回答

0

試試這個:

$file_to_search = "abc.pdf"; 

search_file('.',$file_to_search); 




function search_file($dir,$file_to_search){ 

$files = scandir($dir); 

foreach($files as $key => $value){ 

    $path = realpath($dir.DIRECTORY_SEPARATOR.$value); 

    if(!is_dir($path)) { 

     if($file_to_search == $value){ 
      echo "file found<br>"; 
      echo $path; 
      break; 
     } 

    } else if($value != "." && $value != "..") { 

     search_file($path, $file_to_search); 

    } 
} 
} 
+0

@bigjim - 你有沒有試過上面的代碼? – VK321

+0

我正在測試它。但我正在用我的本地測試。我只是通過ftp複製文件來保持它不變。它沒有找到我在找什麼,但他們是我確定的文件 – bigjim

+0

好吧我嘗試了它們的方式,你有這個設置,並且我還在scandir函數中添加了__DIR__以查看這是否可行,但似乎都沒有做出改變。 – bigjim