<?php
//I have an array like this
$ar = array('0', '1', '2', '3', '4', '5');
for($i = 0; $i < count($ar); $i++)
{
echo $ar[$i+1]; //way1
echo $ar[$i] +=1 //way2
}
?>
私は同じ結果を見たので、way1とway2の間で違いはありますか?配列の2つの方法の違いは何ですか?
<?php
//I have an array like this
$ar = array('0', '1', '2', '3', '4', '5');
for($i = 0; $i < count($ar); $i++)
{
echo $ar[$i+1]; //way1
echo $ar[$i] +=1 //way2
}
?>
私は同じ結果を見たので、way1とway2の間で違いはありますか?配列の2つの方法の違いは何ですか?
正確にここで探しているものを明確にしてください。
これらの2つのアプローチはまったく異なり、配列の値が別の場合は異なる結果が得られます。
echo $ar[$i+1]; // Means you're printing the values corresponding to array keys 1, 2, 3.....
echo $ar[$i] +=1 // Means you're getting the values of keys 0, 1, 2... and adding 1 to each of the values.
あなたは配列$ ARを持っている場合=配列(3、6、2、10)、これら二つはこのように動作します:
echo $ar[$i+1]; // 6, 2, 10 ....
echo $ar[$i] +=1 // 4, 7, 3, 11....
は、この情報がお役に立てば幸いです。
平和! xD
もちろんです。
通知は、あなたのコードは";"
way1
way2
後は、配列内の(i+1)
番目の項目をエコーする必要があります。
way2
i-th
item'value
+ 1
をエコー。
その後、
$ar = array('1','3','4');
、1が出力さ
方法:
3,4
とはキャッチOutOfRange Exception
ウェイ2が出力されます(それが存在していない$ar[3]
、尋ねたので。):
2,4,5
ここでは、代入演算子とインクリメント演算子を使用することです。最初の方法で
:
$のAR [$ I + 1] $i + 1
のインデックスで配列要素を印刷する
echo $ar[$i + 1];
$ar[0 + 1];
$ar[1];
だから、インデックス1の値を探しますと、それは1
お知らせです:
:ループが最後の反復に達したときに、ループしながら、あなたの文は次のようになりますecho $ar[$i + 1];
$ar[5 + 1];
$ar[6];
インデックス6には配列の値が割り当てられていないため、未定義インデックスの通知が表示されます。第二の方法で
:
ここインクリメント演算子が使用されます。したがって、ステートメントは次のようになります。
echo $ar[$i] = $ar[$i] + 1;
したがって、最初に1が$ ar [$]に追加されて割り当てられます。そして、更新された値をエコーします。ループの最初の繰り返しでは、次のようになります。
echo $ar[$i] = $ar[$i] + 1;
$ar[$i] = 0 + 1;
finally Ans will be 1;