首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP -变量变量或for()内部变量的数组

PHP -变量变量或for()内部变量的数组
EN

Stack Overflow用户
提问于 2010-11-19 21:18:02
回答 6查看 393关注 0票数 1

我有这段代码,用php生成一个HTML表格:

代码语言:javascript
复制
<?php 
include("numbers2.php");

echo '<table border="1">';
 echo '<tr>';

for ($i = 1; $i <= 9; $i++) {
if($a1_pos_txt !== TRUE) {

echo "<td>" . $numbers["a" . $i . "_pos"] . "</td>";

} else {?> 
<?php 
echo '<td><input type="text" name="a' . $i . '_post" size="1" maxlength="1" /></td>';
?>
<?php } }?>

我需要做的是修改$a1_post_txt变量,这样当foor循环时,我每次都会得到它,而不是$a1_pos_txt

代码语言:javascript
复制
$a1_pos_txt
.
.
$a9_pos_txt

我基本上是用$numbers["a" . $i . "_pos"]name="a' . $i . '_post"做的,但现在变量在另一个变量中,我不知道该怎么做。

我希望它足够清楚,如果没有,请要求任何需要澄清。

提前感谢!!

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-11-19 21:33:18

使用数组而不是变量。将包含像true或flase这样的值,这些值之前在$a1_pos_txt......$a9_pos_txt中

代码语言:javascript
复制
$arrOfValues[1] = TRUE;
$arrOfValues[2] = FALSE;
 ......
 .....
 ...
$arrOfValues[9] = TRUE;

因此,代码将如下所示

代码语言:javascript
复制
<?php 
include("numbers2.php");

 echo '<table border="1">';
  echo '<tr>';

for ($i = 1; $i <= 9; $i++) {
if($arrOfValues[$i] !== TRUE) {

 echo "<td>" . $numbers["a" . $i . "_pos"] . "</td>";

} else {?> 
<?php  
echo '<td><input type="text" name="a' . $i . '_post" size="1" maxlength="1" /></td>';
?>

票数 2
EN

Stack Overflow用户

发布于 2010-11-19 21:24:25

您可以使用动态变量:

代码语言:javascript
复制
<?php
    $test = 'a';
    echo ${'test'}; 
?>

这将显示"a“。

所以你可以构建一个字符串形式的变量名并获取它的值!

票数 1
EN

Stack Overflow用户

发布于 2010-11-19 21:43:00

有人建议使用变量变量--它们太可怕了!不要使用它们!(它们会使您的代码很难阅读和维护,并且有可能引入安全问题)。

其他人建议使用eval() --绝对不要使用它!!(在几乎所有可能的情况下,使用eval都被认为是非常糟糕的实践;极有可能引入安全问题)

一些人建议使用数组而不是命名变量--这是正确的解决方案。

你已经用$numbers做过了,所以你能用post变量做类似的事情吗?

如果它们与您获得的name="a' . $i . '_post"代码相关,那么您可以将此代码改为post变量--类似于:

代码语言:javascript
复制
name="a_post['.$i.']"

然后,不再有名为a1_posta2_post等的post变量,而是名为a_post[1]a_post[2]等的post变量。然后很容易遍历它们,因为它们是一个数组。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4225354

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档