PHP打印缩略图的简单问题


PHP print thumbnails simple problem

我正在尝试使用PHP打印一些缩略图。问题是我无法在HTML中获得$thumbPath的值。有一个我看不到的小错误:

for($i=1;$i<19;$i++){
                $thumbPath="img/theme".$i.".jpg";
                $thumbId="t".$i;
                echo '<li><a href="#">';
                echo '<img src=$thumbPath id=$thumbId border="none"/>';
                echo '</a></li>';
            }

单引号中的字符串不解析变量。你要么需要这样做:

echo "<img src=$thumbPath id=$thumbId border='"none'"/>";

或者这个:

echo '<img src='.$thumbPath.' id='.$thumbId.' border="none"/>';

单引号中的变量不会计算为php赋值。

换句话说,使用echo'$thumbPath'与echo"$thumbPath"不同。

更改

echo '<img src=$thumbPath id=$thumbId border="none"/>';

echo '<img src="'.$thumbPath.'" id="'.$thumbId.'" border="none"/>';
echo '<img src='.$thumbPath.' id='.$thumbId.' border="none"/>';

php中的单引号不计算嵌入的变量。希望能有所帮助。

就我个人而言,我会做以下事情:

[echo s]printf('<img src="%s" id="%d" border="none" />', 
            $thumbPath, 
            $thumbId);

很明显,我在[]中封装了可选位,以表明您可以回显sprintf((或只回显printf((

这样它看起来很好,你可以用它做你想做的事情。它也更安全,因为你传递给sprintf的参数将被强制为数字、字符串、浮点等。

只是一个想法