作者azhu (=口=")
看板PHP
标题[请益] 跑回圏却只有最後一次有效
时间Fri Jul 28 00:15:38 2006
我这段程式的目的写一个依照档案内容产生缩图的相簿列表。
$album=file("albums.txt"); //读取相簿列表档
$arrayc=count($album); //计算阵列元素数目
for($i=0 ; $i<$arrayc ; $i++)
{
$spec=explode(",",$album[$i]); //将相簿资料以逗点切开存入阵列
$picwh=GetImageSize("$spec[2]"); //读取路径所连图片宽高
if ( $picwh[0] > $picwh[1])
{//横条型
$pich=ceil((100/$picwh[0])*$picwh[1]); //计算修改後比例并取整数
echo "<img src=\"$spec[2]\" width=\"100\" height=\"$pich\"
border=\"0\" />";
}
else
{//直条型
$picw=ceil((100/$picwh[1])*$picwh[0]);
echo "<img src=\"$spec[2]\" width=\"$picw\" height=\"100\"
border=\"0\" />";
}
}
目前碰到一个很奇怪的问题,假如这个回圈必须跑四次,
前面三次都会找不到档案,使得GetImageSize产生错误,
但是最後一次回圈会是成功的XD
我曾在程式码中加入一行is_readable去检查档案存在,
也只有最後一次函式会传回Ture,前面不管几次都是不存在。
变数里面的值都曾经插入函式去检查过了,都是正确的,
这实在让我百思不得其解。
想了一个下午真的找不到原因 囧 只好请大家帮个忙 QQ
执行环境是Apache 1.3.31 PHP 4.3.8
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.170.42.27
1F:推 LPH66:会不会是值里有看不到的换行或空白? 检查这些东西看看 07/28 20:08
3F:→ LPH66:它说Each element of the array corresponds to a line in 07/28 20:10
4F:→ LPH66:the file, with the newline *still attached.* 07/28 20:10
5F:→ LPH66:用rtrim清掉就好了 07/28 20:11
6F:→ azhu:原来换行符号对於PHP程式来说是有意义的喔...感谢指导~ 07/28 22:32