0

パート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ループを使用して単純な文字列を作成し、それを配列に配置することはできません。

ありがとう!

4

3 に答える 3

0

直接すべてをやってみませんか?

foreach ($cnt as $c) {
    $firstvar[$c['Code']] = 02;
    $secondvar[$c['Type']] = $somevar;
    $lastvar['Thing'][] = 'IN';
}
于 2012-05-18T15:01:12.980 に答える
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};

}

変数名の連結の代わりに配列を使用すると、このコードがよりクリーンになることに注意してください。

于 2012-05-18T15:01:19.907 に答える
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);

動作するはずです。

于 2012-05-18T15:06:32.840 に答える