我在变量中有关于存储变量的问题,但我真的不知道它是否可能。
$uType = 1;
if ($uType == 1){
$pageType = " Country <select name='country$i' id='country$i'><option selected disabled>Choose Country</option></select>";
}else{
do something
}
$num = 2;
for($i=1;$i<=$num;$i++){
print "
<tr>
<td>Link/URL $i</td>
<td><input type='text' class='textinput1' size='70' name='url$i' id='url$i' value='http://' />".$pageType."</td>
</tr>";
}
我想打印带有动态id
和name
标记的国家/地区选项,但它不起作用,或者它是否可行?使用$$i
或\$i
也不起作用。
没有错误消息,但国家/地区选项名称和ID标记不是动态的,只显示
<select name="country" ...
我想让它变得动态:
<select name="country1" ...
很抱歉描述不好,我想你们在看代码时明白我的想法,谢谢。
答案 0 :(得分:0)
实际上有很多方法可以实现这一目标。您可以选择以下示例
for ($i = 0; $i < $count; $i++) {
printf("
<tr>
<td>Link/URL %1$s</td>
<td>
<input size='70' name='url%1$s' id='url%1$s' />%2$s
</td>
</tr>
", $i, $pageType);
}
甚至像这样简单的事情也应该起作用
for ($i = 0; $i < $count; $i++) {
echo "
<tr>
<td>Link/URL $i</td>
<td>
<input size='70' name='url$i' id='url$i' />$pageType
</td>
</tr>
";
}
答案 1 :(得分:0)
你应该更好地描述你得到的错误。
无论如何,我看到你在$i
句子中使用if
变量,之前没有声明过。
另一方面,尝试将变量放入{}
字符,这可能有助于PHP知道它是变量。
for($i=1;$i<=$num;$i++){
print "
<tr>
<td>Link/URL {$i}</td>
<td><input type='text' class='textinput1' size='70' name='url{$i}' id='url{$i}' value='http://' />".$pageType."</td>
</tr>";
}
答案 2 :(得分:0)
如果我清楚你的问题,你想把$ i变量放在$ pageType中,并在for循环中放入实际值。
这可能对您有用,将$ pageType变量更改为
$pageType = 'Country <select name="country%1$s " id="country%1$s"><option selected disabled>Choose Country</option></select>';
请注意这里的%1 $ s占位符和双引号更改为单引号,反之亦然。
然后,每当你需要使用动态id渲染$ pageType变量时,使用php函数sprintf,在你的情况下它将是:
for($i=1;$i<=$num;$i++){
print "
<tr>
<td>Link/URL $i</td>
<td><input type='text' class='textinput1' size='70' name='url$i' id='url$i' value='http://' />". sprintf($pageType, $i) ."</td>
</tr>";
}
希望这将有所帮助