-1

私たちの組織の以前の開発者によって書かれたコードがあります:

< ?php
foreach($response as $key => $value) {
?>      

<tr>

<td><?php echo $key; ?></td>
<td><?php echo $value; ?></td>
</tr>

<?php

}

?>

私はphpに非常に慣れていないため、上記のコードから$key[1]...$key[20] & $value[1]...$value[20]の値を取得する方法がわかりません。コードは 20 行の値を書き込みます

このコードの問題を正しく表現できるかどうかはわかりません。私の悪い英語でごめんなさい。

4

4 に答える 4

0
< ?php
$keysarray = array();
$valuesarray = array();
int i = 0;
foreach($response as $key => $value) {
?>      

<tr>

<td><?php $keysarray[i]= $key; echo $key; ?></td>
<td><?php $valuesarray[i]= $value; echo $value; ?></td>
</tr>

<?php
i++;
}

?>
于 2013-01-31T10:51:57.123 に答える
0

foreachループの全体的な考え方は、配列内のさまざまなインデックスにアクセスする必要がないようにすることです。

あなたの例では、$responseは配列です。

各反復中に、配列のキー/インデックスが$ keyに割り当てられ、値が$valueに割り当てられます。

例えば。

$response = array('hello', 'goodbye');
// which is essentially the same as:
$response = array(0 => 'hello', 1 => 'goodbye');

foreachループの最初の反復中:

// first item in the array has an index of 0 and value of 'hello'
$key == 0;
$value == 'hello';

パス2の間:

$key == 1;
$value == 'goodbye';
于 2013-01-31T10:53:15.840 に答える
0

あなたの配列$responsearray("Peter"=>"35","Ben"=>"37","Joe"=>"43");その場合、

<?php

$response= array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

foreach($response as $key => $value) {
?>      

<tr>

<td><?php echo $key; ?></td>
<td><?php echo $value; ?></td>
</tr>

<?php

}

アウトプット、

Peter 35 
Ben 37 
Joe 43

もしそう$responseならarray("35","37","43");

それからそれは出ます、

0 35 
1 37 
2 43

最初のケースでは、キーは指定したとおりになります。として知られていAssociative Arraysます。次に、キーは 0 からデフォルトになりますNumeric arrays。大きな問題ではない。

于 2013-01-31T10:59:24.953 に答える
0

あなたの質問を理解しているので、数値インデックスが必要ですか..?

$key = array_keys($response);
$value = array_values($response);

次に、使用できます

$key[1]...$key[20] & $value[1]...$value[20]

于 2013-01-31T10:49:21.430 に答える