2011-07-08 61 views
1

我有一個腳本,回聲的用戶名插入到img src。只要圖像位於目錄中,此功能就很有用。如果文件存在,我如何創建一個if語句只響應下面的命令?如果它不存在顯示爲Default.png回顯文件是否存在。如果不回顯「default.png」php

我試圖使用mod_rewrite和有過零運氣吧..

<div class="contactphoto"><img src="contactphoto/<? echo ($note['user_name'] == "Support")? $note['first_name'].''.$note['last_name'] : $note['user_name'];?>.png"/></div> 

回答

0

我覺得這是什麼你要。

<?php 
$file = ($note['user_name'] == "Support") ? $note['first_name'].''.$note['last_name'] : $note['user_name']; 
$file .= '.png'; 

if(!file_exists($_SERVER{'DOCUMENT_ROOT'} .'/'.$file)){ 
    $file = 'placeholder.png'; 
} 
?> 
<div class="contactphoto"> 
    <img src="contactphoto/<?php echo $file; ?>"/> 
</div> 

如果失敗,請嘗試測試(這應該匹配圖像的路徑)也注意大小寫:

echo $_SERVER{'DOCUMENT_ROOT'} .'/'.$file; 
+0

埃迪。 我不得不修改:$ file。='png';到$ file。='.png'; else語句覆蓋所有其他圖像。即使該文件存在。 – ipengineer

+0

@ipengineer它可能歸結爲file_exists沒有佔相對路徑..嘗試上面編輯的代碼..(和OOP的你的權利,我忘了。)(第二編輯..測試代碼,它的工作原理) – Eddie

+0

同樣的問題..否則會覆蓋if語句。 – ipengineer

7

的名字說明了一切:file_exists()

+0

+1編碼它之前,我看到這個 – Eddie