Php 将计数器用作变量的一部分
这是我想做的Php 将计数器用作变量的一部分,php,variables,for-loop,counter,Php,Variables,For Loop,Counter,这是我想做的 for($i = 1; $i < 4; $i++) { $featuredImage$i = $featured['featuredImage$i']; $featuredText$i = $featured['featuredText$i']; $featuredURL$i = $featured['featuredURL$i']; } 我怎么能做那样的事呢?像这样的事 for($i = 1; $i < 4; $i++) {
for($i = 1; $i < 4; $i++) {
$featuredImage$i = $featured['featuredImage$i'];
$featuredText$i = $featured['featuredText$i'];
$featuredURL$i = $featured['featuredURL$i'];
}
我怎么能做那样的事呢?像这样的事
for($i = 1; $i < 4; $i++) {
$featuredImage$i = $featured['featuredImage' .$i];
$featuredText$i = $featured['featuredText' .$i];
$featuredURL$i = $featured['featuredURL' .$i];
}
for($i = 1; $i < 4; $i++) {
${featuredImage . $i} = $featured['featuredImage' . $i];
${featuredText. $i} = $featured['featuredText' . $i];
${featuredURL . $i} = $featured['featuredURL' . $i];
}
您需要将变量连接到字符串的末尾,如下所示:
for($i = 1; $i < 4; $i++) {
$featuredImage$i = $featured['featuredImage'.$i];
$featuredText$i = $featured['featuredText'.$i];
$featuredURL$i = $featured['featuredURL'.$i];
}
您可以在带有双引号的字符串中使用变量,有时这比插入和取出字符串更容易,但是对于单引号,您必须将其连接到位 你唯一需要的就是学习PHP语言。 此页面包含您需要的所有内容: 不管这个问题是什么,这本书都值得一读,因为字符串语法是最基本的PHP语法概念之一,无论如何你都必须把它背下来 我要补充的唯一一点是:严格地说,计数器不是作为变量的一部分,而是作为字符串的一部分,而字符串又是数组变量的键。但从语法上讲,你是在用一个字符串和一个变量组成一个字符串 编辑 哦。我没有注意到最左边的变量。 只有当我开始写另一个建议时,我才能看到它
你也可以考虑使用嵌套数组。 可以这样使用
foreach ($featured as $item) {
echo $item['featuredImage'];
echo $item['featuredText'];
echo $item['featuredURL'];
}
或者用这些变量做任何你想做的事情
这将是很高兴看到完整的背景,导致你这个问题,因此它将有可能给你最好的解决方案,为您的具体情况。
您可能需要重新设计您的数据库…这些将起作用:
for($i = 1; $i < 4; $i++) {
$featuredImage$i = $featured["featuredImage$i"]; // $variable works inside double quotes
$featuredText$i = $featured['featuredText' . $i]; // single quote and string concatenation
$featuredURL$i = $featured["featuredURL{$i}"]; // $variable can be enclosed inside {} for cases such as $featured["featuredURL{$i}_href"]
// to have php substitute the variable $i instead of $i_href
}
我得到了答案:试试看
${"featuredImage" . $i} = $featured['featuredImage' . $i];
${"featuredText". $i} = $featured['featuredText' . $i];
${"featuredURL" . $i} = $featured['featuredURL' . $i];
如果您不阅读文档,堆栈溢出将更加充满这样的问题。谢谢。我最终使用了一个数组和andreas发布的建议。我发现将字符串变量放入一个数组,然后在代码中的同一类型for循环中调用它,这正是我所需要的??没有这个::$featuredImage。$iThanks感谢您真正解释了我的问题所在。帮助我了解我需要改变什么。我投了赞成票。
${"featuredImage" . $i} = $featured['featuredImage' . $i];
${"featuredText". $i} = $featured['featuredText' . $i];
${"featuredURL" . $i} = $featured['featuredURL' . $i];