我使用glob()查找符合规则的任何图像文件。
我正在使用以下代码:
$photo = glob(($_SERVER['DOCUMENT_ROOT'] .'/stocklist/photo/'.$row['Scientific'].'*.jpg'));
print_r(glob(($_SERVER['DOCUMENT_ROOT'] .'/stocklist/photo/'.$row['Scientific'].'*.jpg')));
产生以下内容:
Array ( [0] => /var/www/web/stocklist/photo/Pituophis deppei jani.jpg
[1] => /var/www/web/stocklist/photo/Pituophis deppei jani1.jpg )
然后,当我使用下面的代码将图像回显到页面时,它会显示2个损坏的图像图标......
$length = count($photo);
if($length) {
echo"<ul id='slide'>";
for ($i = 0; $i < $length; $i++) {
echo "<li><img src='".$photo[$i]."' alt='".$row['Name']."'></li>";}
echo "</ul><ul id='slide-pager'>";
for($i2 = 1; $i2 < $length+1; $i2++) {
echo "<li><a href='#".$i2."'>".$i2."</a></li>";
}
echo "</ul>";
}
else {
echo "<img src='/stocklist/photo/placeholder.jpg' class='img-right'><br clear='right'>";
}
答案 0 :(得分:2)
尝试更改为:
$photo = (glob('stocklist/photo/'.$row['Scientific'].'*.jpg'));
print_r(glob('stocklist/photo/'.$row['Scientific'].'*.jpg'));
这样,返回的路径已经相对于您的公用文件夹了。你也可以像@sergiu建议做一个str_replace,但为什么不完全摆脱呢?