2016-09-30 369 views
0

我試圖顯示帶有標題和縮略圖的圖像。我能夠顯示圖片,但我很難將圖像文件名稱顯示爲標題。使用PHP從完整圖像路徑獲取圖像名稱

下面是我的代碼:

<?php 
$files = glob("images/Friends/*.*"); 
for ($i=0; $i<count($files); $i++) 
{ 
    $num = $files[$i]; 
    echo '<div class="w3-content" style="max-width:800px;position:relative;padding-top:0px;">'; 
    echo '<div class="w3-display-container mySlides">'; 
    echo '<div class="col s12 m6 l12">'; 
    echo '<div class="page4">'; 
    echo '<img src="'.$num.'" height="750" width="780" alt="random image" class="responsive-img" >'."&nbsp;&nbsp;";  
    echo '</div>'; 
    echo '</div>'; 
    echo '<a class="w3-btn-floating w3-hover-dark-grey" style="position:absolute;top:45%;left:0" onclick="plusDivs(-1)">❮</a>'; 
    echo '<a class="w3-btn-floating w3-hover-dark-grey" style="position:absolute;top:45%;right:0" onclick="plusDivs(1)">❯</a>'; 
    echo '</div>'; 
    echo ' </div>'; 
} 
?> 

<script> 
    var slideIndex = 1; 
    showDivs(slideIndex); 
    function plusDivs(n) { 
     showDivs(slideIndex += n); 
    } 
    function showDivs(n) { 
     var i; 
     var x = document.getElementsByClassName("mySlides"); 
     if (n > x.length) {slideIndex = 1} 
     if (n < 1) {slideIndex = x.length} 
     for (i = 0; i < x.length; i++) { 
      x[i].style.display = "none"; 
     } 
     x[slideIndex-1].style.display = "block"; 
    } 
</script> 

回答

1

要顯示的標題設置title屬性。並在瓷磚屬性中設置圖像的名稱。

從圖片使用basename($num)

的FULLPATH獲取圖片名請在下面代替你的PHP代碼。

echo '<img src="'.$num.'" height="750" width="780" alt="'.basename($num).'" title="'.basename($num).'" class="responsive-img" >'."&nbsp;&nbsp;"; 

要獲取文件名,而不是擴展名,在循環中的代碼下面的每個圖像的位置。並將$filename變量放在要顯示圖像名稱的位置。

$filenamewithextension = basename($num); 
$fileextenstion = pathinfo($filenamewithextension, PATHINFO_EXTENSION); 
$filename = basename($num,$fileextenstion); 
$filename = trim(preg_replace('/[0-9]+/', '', $filename)); 
+0

謝謝你的快速回答。它仍然沒有顯示,只有一個變化,當我將鼠標移到圖像上時,我可以看到圖像文件的名稱。 – HebleV

+0

經過哪些更改,您可以將鼠標懸停在文件標題上?據我所知,標題標題應該設置爲HTML屬性,因此您希望在標題屬性中設置圖像的標題名稱中顯示圖像名稱。在添加了this-alt =「'。basename($ num)。'」title =「'。basename($ num)。'」之後加入 –

+0

。它在mouseover上顯示 – HebleV