$txtName1="中国";
$txtName2="美国";
$txtName3="美国";
for($i=1;$i<=3;$i++)
{
echo $txtName.$i;
}怎么出来的都是$txtName1$txtName2$txtName3

解决方案 »

  1.   

    搞不懂了这么就对了。
    <?php
    $txtName1="中国"; 
    $txtName2="美国"; 
    $txtName3="美国"; 
    for($i=1;$i <=3;$i++) 

    $test=txtName.$i; 
    echo $$test;

    ?>
      

  2.   

    $txtName不是你定义的变量,也不是一个数组,当然是错误的
      

  3.   

    正如二楼说的就可以了:
    不过有点修正, 为了规范起见:
    在$test=txtName.$i; 地方加上引号 :$test="txtName".$i; 就是:
    <?php
    $txtName1="中国";
    $txtName2="美国";
    $txtName3="美国";
    for($i=1;$i <=3;$i++)
    {
    $test="txtName".$i;
    echo $$test;
    }
    ?>这样就不会有php warning 了.
      

  4.   

    楼主解决了
     echo ${'txtName'.$i};
    用大括号就对了汗