在循环中更改变量的名称

时间:2013-05-15 12:30:21

标签: php

我有超过50个字符串。我需要将这些字符串放入一个数组中。我尝试使用循环来创建它。但是我在自动增量var的名字上遇到了麻烦。 $string.$s$string1, $string2)。它将成为Undefined变量,是否可以更改var的名称?

$string0="ABC";
$string1="DEF";
$string2="GHI";
...


$data=array($string0, $string1, $string2...);

for($s=0; $s<50; $s++){
    $data[$s]=$string.$s;
}

2 个答案:

答案 0 :(得分:7)

$string.$s;

但是

${'string'.$s};

毋庸置疑,最好的解决方案是:

$data = array(
    'ABC',
    'DEF',
    'GHI',
);

$data = array();
$data[] = 'ABC';
$data[] = 'DEF';
$data[] = 'GHI';

$data = array();
$data[0] = 'ABC';
$data[1] = 'DEF';
$data[2] = 'GHI';

您也可以使用编辑功能替换它们。

我将举一个例子, Notepad ++ 。 (日语插件已启用,抱歉)

让我们这样试试: enter image description here

点数:

  • (\$string)([0-9]+)(=)搜索
  • 替换为\1[\2]\3
  • 模式正则表达式

答案 1 :(得分:3)

这样的事情我觉得应该有用:

for($s=0; $s<50; $s++)
{
    $myvar = "string" . $s;
    $data[$s]=$$myvar;
}