Php glob()查找图像,但返回';失踪
Im使用glob()查找与规则匹配的任何图像文件 我正在使用以下代码:Php glob()查找图像,但返回';失踪,php,glob,Php,Glob,Im使用glob()查找与规则匹配的任何图像文件 我正在使用以下代码: $photo = glob(($_SERVER['DOCUMENT_ROOT'] .'/stocklist/photo/'.$row['Scientific'].'*.jpg')); print_r(glob(($_SERVER['DOCUMENT_ROOT'] .'/stocklist/photo/'.$row['Scientific'].'*.jpg'))); 这将产生以下结果: Array ( [0] =&
$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'>";
}
$length=计数($photo);
如果($长度){
回声“”;
对于($i=0;$i<$length;$i++){
回声“”;}
回声“”;
对于($i2=1;$i2<$length+1;$i2++){
回声“”;
}
回声“
”;
}
否则{
回声“
”;
}
尝试更改为:
$photo = (glob('stocklist/photo/'.$row['Scientific'].'*.jpg'));
print_r(glob('stocklist/photo/'.$row['Scientific'].'*.jpg'));
这样,您返回的路径将已经相对于您的公用文件夹。你也可以像@sergiu建议的那样做stru_替换,但为什么不干脆把它完全去掉呢 您需要从图像路径中删除
/var/www/web
。这是一个服务器绝对路径,不是一个可通过web访问的路径。使用str\u replace
。似乎您需要先了解HTTP和web服务器,然后PHP.str replace就可以完美地工作了。谢谢@Sergiu Parashiv:)