2017-06-15 84 views
0

代码:file_exists方法在ci中不工作?

<?php 
    $filename = FCPATH.'resources/img/college_logo/'.trim($fetch['college_name']).'.jpg'; 
    if (file_exists($filename)) 
    { 
?> 
     <img src="<?php echo $filename; ?>"> 
<?php 
    } 
    else 
    { 
?> 
     <img src="<?php echo base_url(); ?>resources/img/college_logo/logo_not.jpg"> 
<?php  
    } 
?> 

enter image description here

我在笨新的,我想如果存在没有发现任何其他显示标志图像来显示图像,但现在它只能显示标识未找到。而我回声$文件名,它告诉我图像路径,当我把路径在URL然后它显示我的形象,但在这里它不适合我。那么,我该如何解决这个问题?请帮忙。

谢谢

+1

'$ filename'是绝对的'HTTP' URL? – DarkBee

+1

确保file_exists()需要使用硬盘驱动器上的文件路径,而不是URL – Santosh

+0

如果我使用$ filename ='http://localhost/collegescan_ci/resources/img/college_logo/'.trim($ fetch [ 'college_name']) 'JPG'。那么它显示我没有找到标志为什么? – omkara

回答

1

问题是因为您使用的文件系统路径,如果文件被发现。您应该使用URL而不是绝对系统路径在浏览器中呈现图像。

<?php 
$filename = 'resources/img/college_logo/'.trim($fetch['college_name']).'.jpg'; 
if (file_exists(FCPATH.$filename)) { 
?> 
<img src="<?php echo base_url($filename); ?>"> 
<?php 
} else { 
?> 
<img src="<?php echo base_url('resources/img/college_logo/logo_not.jpg'); ?>"> 
<?php  
} 
?> 
+0

谢谢@Tpojka – omkara