2009-11-01 52 views
0

有沒有辦法從目錄中拉出圖像並將它們放置在網頁上,並將鏈接附加到這些圖像上,這些圖像將人帶到與使用PHP的圖像相關的特定網頁上?動態拉取圖像並創建鏈接

感謝

回答

0
<?php 
    $directory = "imageDirectory"; // assuming that imageDirectory is in the same folder as the script/page executing the script 
    $contents = scandir($directory); 
    if ($contents) { 
     foreach($contents as $key => $value) { 
      if ($value == "." || $value == "..") { 
       unset($key); 
      } 
     } 
    } 
     echo "<ul>"; 
    foreach($contents as $k => $v) { 
     echo "<li><a href=\"$directory/" . $v . "\">link text</a></li>"; 
    } 
     echo "</ul>"; 

?> 

這應該工作,雖然foreach()可以-computationally-昂貴。我敢肯定,必須有在第一foreach()

0

東西去除...相對文件路徑的這樣應該做的更好/更經濟的方式:

if ($handle = opendir('/path/to/files')) { 
    echo "Directory handle: $handle\n"; 
    echo "Files:\n"; 

    /* This is the correct way to loop over the directory. */ 
    while (false !== ($file = readdir($handle))) { 
    if(substr($file, -3) == 'jpg'){ //modify to handle filetypes you want 
        echo "<a href='/path/to/files/".$file."'>".$file."</a>"; 
    } 
    } 

    closedir($handle); 
} 
+0

也http://www.php.net/manual/en/function.readdir.php會幫助你。大部分上述代碼來自該頁面。 – Jesse 2009-11-01 00:50:35

0

是你問如何掃描目錄或如何將圖像列表與URL相關聯?

回答第一個問題是水珠()函數

第二答案是使用一個ASSOC陣列

$list = array('foo.gif' => 'bar.php', 'blah.gif' => 'quux.php'); 

和foreach循環,以輸出圖像和鏈接

foreach($list as $src => $href) echo "<a href='$href'><img src='$src'></a>"; 
0

@ ricebowl:

使用PHP版本5.2.9/apache 2.0/windows vista - 我是gett解析錯誤。

反正有工作液:

$dir = "./imageDirectory"; 
$ext = array('.jpg','.png','.gif'); 

$dh = opendir($dir); 
while (false !== ($filename = readdir($dh))) { 

print '<ul>'; 

if(strpos($filename, '.') > 3) 
{ 
    print '<li><a href="'.$dir.'/'.$filename.'">'.str_replace($ext, '', $filename).'</a></li>'; 

} 

print '</ul>'; 

} 
+0

啊?你得到的錯誤是什麼? – 2009-11-01 01:54:33

+0

...啊,是的。我不確定我在做什麼來促成這種事情發生。恩,對不起。 = /(編輯我的文章,以更正語法/代碼) – 2009-11-01 01:58:06

+0

更改$ directory =「imageDirectory」;到$ directory =「./imageDirectory」; 就是這樣:) – 2009-11-01 23:01:41