第1部分:我需要为一组数组变量
创建一个循环for ($cnt=1; $cnt<=$qty; $cnt++) {
$firstvar.$cnt['Code'] = '02';
$secondvar.$cnt['Type'] = $somevar;
$thirdvar.$cnt['Code'] = 'IN';
}
//结果为
$firstvar1['Code'] = '02';
$secondvar1['Type'] = $somevar;
$thirdvar1['Code'] = 'IN';
$firstvar2['Code'] = '02';
$secondvar2['Type'] = $somevar;
$thirdvar2['Code'] = 'IN';
//etc.
然而,解析$ cnt变量似乎与数组冲突。
第2部分:然后我需要创建一个像这样的变量数组:
$lastvar['Thing'] = array( $thirdvar1, $thirdvar2, ... $thirdvar.$qty );
在这里,使用for循环创建一个简单的字符串并将其放入数组中不起作用。
谢谢!
答案 0 :(得分:0)
为什么不直接做所有事情?
foreach ($cnt as $c) {
$firstvar[$c['Code']] = 02;
$secondvar[$c['Type']] = $somevar;
$lastvar['Thing'][] = 'IN';
}
答案 1 :(得分:0)
第1部分:$firstvar.$cnt['Code']
应为${"firstvar$cnt"}['Code']
(或${'firstvar'.$cnt}['Code']
)。
第2部分:
for ($cnt=1; $cnt<=$qty; $cnt++) {
$lastvar['Thing'][] = ${'thirdvar'.$qty};
}
第3部分:(我的!)
把所有东西放在同一个循环中:
for ($cnt=1; $cnt<=$qty; $cnt++) {
${'firstvar'.$cnt}['Code'] = 02;
${'secondvar'.$cnt}['Type'] = $somevar;
${'thirdvar'.$cnt}['Code'] = 'IN';
$lastvar['Thing'][] = ${thirdvar$qty};
}
请记住,如果使用数组而不是变量名称连接,则此代码会更清晰。
答案 2 :(得分:0)
<?php
$somevar = "testValue";
$qty = 5;
$lastvar['Thing'] = array();
for($cnt=1; $cnt<=$qty; $cnt++)
{
${"firstvar$cnt"} = array('Code' => '02', 'Type' => $someVar, "Code" => "IN");
$lastvar['Thing'][] = ${"firstvar$cnt"};
}
var_dump($lastvar);
应该有用。