2012-05-18 67 views
0

第1部分:我需要创建一个循环为一组数组变量PHP与循环数组

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

第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}; 

}

请记住,这个代码将如果使用数组而不是变量名称连接,则更干净。

+0

这对我有效。我根据你的建议把它放在同一个循环中。谢谢!! – dsWebster

+0

谢谢,萨米!这是我的第一个问题。感谢你和所有在这里分享知识的人。这太棒了! – dsWebster

0

为什么不直接做所有事情?

foreach ($cnt as $c) { 
    $firstvar[$c['Code']] = 02; 
    $secondvar[$c['Type']] = $somevar; 
    $lastvar['Thing'][] = 'IN'; 
} 
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); 

应该工作。