【问题标题】:How can I process an array variable that hide inside another variable?如何处理隐藏在另一个变量中的数组变量?
【发布时间】:2013-10-18 03:54:21
【问题描述】:

如何将 $box1 和 $box2 保存在 DB 中并将其作为变量取出?这样我就可以循环播放了。

if($m_name[$x]=='a'){ 
    echo '<input type="checkbox" name="chkbox[][]" (in_array($box1[$i][$j], $autocheck_array) ? ' checked="checked"' : '') . '"/>';
}
elseif($m_name[$x]=='b'){
     echo '<input type="checkbox" name="chkbox[][]" (in_array($box2[$i][$j], $autocheck_array) ? ' checked="checked"' : '') . '"/>';
}

$box1$box2 是 DB 中的行标题,所以我无法循环它

【问题讨论】:

  • 请澄清问题,这对我来说没有意义。
  • 你期望它做什么,它在做什么呢?您是否阅读过 PHP 手册中关于字符串变量插值的部分?
  • 对不起,我问错了问题。其实问题是。我将从 mysql DB 中获取一个字符串。之后我将另一个变量分解为数组。因此,我需要从 DB 中获取字符串并与数组编号结合以构建一个与我爆炸的变量相同的变量。这是因为我想从数据库中循环所有变量,而不是在用户处理时通过编码来编辑它。对不起,如果我的英语不好。
  • 不是所有的解决方案都可以解决这个问题吗?

标签: php arrays variables


【解决方案1】:

去掉引号。数组值不能像引号内那样简单地工作

<?php 
$abc[1][2]=1; 
$a=$abc[1][2]; 
echo $a; 
?>

【讨论】:

    【解决方案2】:

    插值复杂变量时需要使用{}

    $a = "The value of a[1][2] is {$abc[1][2]}.";
    

    请参阅 PHP 字符串 documentation 中的复杂(卷曲)语法部分。

    请注意,只有在作为较大字符串的一部分进行插值时才需要这样做。如果您只是尝试直接分配数组值,则无需将其放在引号中。您可以分配:

    $a = $abc[1][2];
    

    【讨论】:

      【解决方案3】:

      你是这个意思吗?

      $abc[1][2]=1;
      $a=$abc[1][2];
      echo $a;// Outputs 1
      

      【讨论】:

        【解决方案4】:

        通过使用此语句 $a="$abc[1][2]";,您实际上是在为 $a 分配 string

        去掉引号

        <?php 
        $abc[1][2]=1; 
        $a=$abc[1][2]; 
        echo $a; 
        ?>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2022-10-31
          • 2020-07-24
          • 2014-12-12
          • 1970-01-01
          • 1970-01-01
          • 2017-02-14
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多