我有一个我作为学校项目制作的网站,看来我已经跳得太深了。我正在使用PHP为每个数组对象创建一个页面。在每个页面中,我想个性化内容以匹配页面。例如,我有一个名为Darryl
的页面,它将包含我的所有图像。将创建其他页面,并根据页面动态创建这些页面的内容。
我要做的是使用PHP更改img src
并使用计数器弹出不同的图像。这对我来说难以解释。
我有这行html代码,其中包含php(确定显示哪些图像:
<td><img style="width:11em;" class="magnify" src="<?php print $imgSrc; ?>"/><br><?php print $pageName; ?></td>
我遇到问题的部分是“print $ imgSrc;”部分。这是我的php将创建src路径的区域。它使用此变量$ imgSrc来获取正确的路径。
该变量是:
$imgSrc = "images"."/".$pageName."/".counter();
写哪个
答案 0 :(得分:1)
看起来你对功能是什么或者执行时感到困惑。如果这是您在页面上的所有代码:
$imgSrc = "images"."/".$pageName."/".counter();
<td>
<img style="width:11em;" class="magnify" src="<?php print $imgSrc; ?>"/><br>
<?php print $pageName; ?>
</td>
然后$imgSrc
只写一次。所以无论counter()
做什么,它只会做一次。你可以把整个东西包裹在for循环中,然后用counter()
调用。您可以删除$imageSrc
的局部变量并动态定义属性,如下所示:
<td>
<img style="width:11em;" class="magnify" src="<?php print "images"."/".$pageName."/".counter(); ?>"/><br>
<?php print $pageName; ?>
</td>
然后,如果counter()
函数本身就是有状态的(就像在每次调用它时它会返回一个不同的值),那么你就完全了。
您可以创建如下的有状态函数:
$counter_var = 0;
function counter() {
global $counter_var;
return $counter_var++;
}
但是全局化是不受欢迎的,因为创造难以追踪的副作用(以及其他原因)。大多数人会告诉你使用for循环。我只提到它,因为它看起来更接近你在原始代码中尝试做的事情。