我正在使用Jquery將值發佈到頁面,該頁面應該搜索文件夾及其子文件夾以查看文件存在的位置。在包含子文件夾的文件夾中查找包含帖子值的圖像
文件名總是有一些像「HAV_」,然後將產品代碼的開始...
HAV_345GG.jpg
我需要張貼的值,它是產品代碼和搜索所有文件夾找到一場比賽然後返回的位置作爲一個鏈接即:
http://www.mydomain.co.uk/folder/subfolder/HAV_345GG.jpg
任何幫助將是偉大的。
我正在使用Jquery將值發佈到頁面,該頁面應該搜索文件夾及其子文件夾以查看文件存在的位置。在包含子文件夾的文件夾中查找包含帖子值的圖像
文件名總是有一些像「HAV_」,然後將產品代碼的開始...
HAV_345GG.jpg
我需要張貼的值,它是產品代碼和搜索所有文件夾找到一場比賽然後返回的位置作爲一個鏈接即:
http://www.mydomain.co.uk/folder/subfolder/HAV_345GG.jpg
任何幫助將是偉大的。
另一種選擇是利用PHP函數glob
函數返回基於模式匹配的數組。這似乎可以用在這種情況下。您需要小心的文件具有類似名稱的部分一致,雖然如:
ohhhh這聽起來不錯... – Andy 2010-11-16 11:38:15
你會有任何代碼示例,可以幫助迭代通過目錄? – Andy 2010-11-16 13:44:00
我不害怕,但那裏有一些文章,如http://www.electrictoolbox.com/php-glob-find-files/和http://net.tutsplus.com/tutorials/ php/quick-tip-loop-through-folders-with-phps-glob /和http://www.phparch.com/2010/04/28/putting-glob-to-the-test/ – Treffynnon 2010-11-16 14:21:51
您需要創建查找表,以便通過產品代碼快速查找。
創建一個腳本,通過產品代碼通過所有的文件夾和索引抓取的圖像文件的位置。緩存這些腳本輸出到某處(db,redis memcached等)。
創建一個搜索腳本,該腳本使用緩存的查找表來查找正確文件的路徑。
您緩存可能是一個PHP數組,如:
array(
'ProductCode123' => array(
'/location/to/image1.jpg',
'/path/to/image2.jpg',
),
'SerialNumber12233' => array(
'/some/location/to/image1.jpg',
'/another/folder/image2.jpg',
),
);
沒有這個緩存方法,你會發現性能是一個問題,如果有大量的文件和目錄。
一位同事編寫了一個名爲uberloader的PHP腳本,它執行類似的事情,但是爲不同的文件結構(例如傳統項目中的自動加載器)執行PHP自動加載器。它旨在自動加載類文件,但使用類似的狩獵和緩存概念。
感謝您的幫助treffy,這似乎是有道理的! – Andy 2010-11-16 10:38:33
是否有任何邏輯文件夾/子文件夾命名WRT的產品代碼?你可以遍歷你的文件系統的蠻力,直到你找到了這個文件,但這對我來說似乎不是一個理想的方法。 – 2010-11-16 10:10:37
沒有邏輯,它可能位於任何文件夾中......它是一種搜索,以便用產品代碼查找文件的一部分。 – Andy 2010-11-16 10:14:40